Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
executable file 189 lines (160 sloc) 5.83 KB
v. 1.0.0:
AppDelegate:
Life Cycle:
- On launch, set myUser if FBConnection exists.
- Else, redirect to WelcomeView.
Location:
- Make a global function to get location asynchronously.
- Check location every 3 minutes; send to server if greater than 3 miles from last sent location.
WelcomeView: @Matt
Shown on first log in
- Design logo (at-sign); Put at top
- Add paragraph
- "Meet people nearby with similar interests."
- Add default & active FBConnect button image backgrounds
- Add notes below FBConnect button:
- [Your privacy](link/to/privacy-policy) is 100% protected.
- Only stories you approve will be published.
- You may completely remove acani & your info at any time.
- We verify that all users are real.
- Add "Connect Anonymously" button below FBConnect button.
PrivacyPolicyView: @Matt
Modal view linked to from the WelcomeView
- Simple textView with userInteraction disabled.
- Model after Lovers privacy policy.
Point System:
- FConnect: 10 pts
- Post photo: 10 pts
- Send msessage: 2 pts
- Reply to message: 1 pt
InterestsView: @Matt
List of interests
- My Interests / All Interests
- Nested lists of interests
Server:
- Sinatra & MongoDB serve collection as JSON
UsersView:
- LoadMore
- Settings button in upper right.
- Filtering
- Handle empty JSON array response
ProfileView:
PhotoView:
- Serve 2X photos for high-res devices
- Cache large photos in filesystem
Chat:
Server:
node.js & redis
- Store messages in MongoDB
View:
- See earlier messages (pagination)
Future Versions:
WelcomeView:
- Split testing with NSURLConnection to maximize % of users that connect via Facebook
- Design & add background image like SCVNGR's
LauncherView:
Like the Facebook iPhone app
- Account button in upper left
- Logout
- Settings
- Icons
- Interests
- Messages
- Profile
InteresteView:
- List all interests
- My Interests / All Interests
- Add pictures
UsersView:
- Search by keyword or username
MessagesView:
Shows all messages, like iPhone's native Messages app
- Rewrite chat server
ChatView:
- Fix rotation bug
- Add receivers
Next:
- User profile & settings storage
- Users tableView
- Add conditional timestamp support
Refactor:
- Write function addMessage:message for send & receive
- How should we be fetching messages?
- Mark messages as read all at once instead of inside tableCell function.
Pages:
- Launcher View: add/search new people/groups to your launcher; rearrange; log out
- UsersView: photo grid w/ flags; header & iAd footer
- PhotoView: profile photo & info; favorite, block, & chat buttons
- ProfileView: edit profile fields, filters, & groups; edit group specific settings
- ChatView: chat; more button to send location, photo, clear chat. Push notifications
- Interface w/ Network Server. FBConnect & Twitter. Test & final touches
Server:
Sinatra & mongoDB
- Handle Block & Favorite buttons
- Make Team Page
- Create user if doesn't yet exist: find({ :device_id: id }); update location.
- Update profile info & photo
Chat Server:
node.js & redis
- Respond with new messages on connect
- Send location
- Send photo
Users:
- TableView
- Refresh
Put User info on Photo View:
- Get User info from User instance created from JSON
- Make it just like Grindr for now, except keep header the bluish-gray color it is now, not yellow
- Include Chat, Favorite, and Block buttons
Load Thumbnail View:
- Load JSON Users into NSMutableArray and load into tableView
- For each User object, load thumbnail photo:
- First, randomly load different shades & versions of default (blank) photo
- Show spinning dashes to signify that thumbnail is in the process of being loaded
- Add flair: username, red number, star, green dot, blue & yellow border/background
- Add refresh button (spin) & load more guys (disable)
ChatView:
- ChatContentHeader Buttons: Call, Contact Info/Add to Contacts, [Load Earlier Messages]
- Send photos, video, location.
- Edit: delete, forward, clear all
- Put each timestamp in its own cell
- Rebuild ChatInput & ChatBar with graphics, not background images
- Support landscape orientation. See SMS Bubbles app
- Touch ChatContentView to close keyboard
- Like Facebook chat, twitterfon show a small thumbnail of profile photo next to each message
- Tap and hold (or double-tap) on table-cell highlights msgText for copying
- sets backgroundViewSelected
- may require redesign of cell
- Make timestamps separate cells
- Message sending progress bar at top of navbar
- Message animation on send from msgInput to chatContent
Fix chatInputView bugs:
- Hit return x-times and then backspace x+1-times. Sometimes cursor jumps.
- Type a word, hit return, hit backspace. Sometimes weird word suggestion is made.
Recurring:
- Push to Git after adding each new feature. Make sure it builds first.
- Keep TODO, README (getting started, etc.), RECIPES, HISTORY, etc. up to date
Refactoring:
PhotoView:
- Make a captionLabel class.
ManagedObject:
- Profile & Interests: Abstract findById methods into one (with Category?).
RefreshableViewController:
- Make function displayRefreshButton(target, title, selector).
- InterestsViewController & UsersViewController
Style:
- Make every line max 100 columns, like Three20.
NSURLConnection:
- Make generic Request class (like FBRequest) for saveProfile & join/leaveInterest.
Bugs:
- set breakpoint on malloc_error_break and click acani, then back.
Finance:
- Apply for EIN online
- Open acani bank account during lunch in NYC
- Link this bank account to iTunesConnect
Production:
- Deploy to acani.no.de
- Get affordable hosting (Amazon)
Get Matt Situated:
- get him a wireless card so he can use wireless on train
- Get to sleep by 9:30pm every night.
Something went wrong with that request. Please try again.