Skip to content
/ azana Public

Task assigning app for teams inspired by Asana.

Notifications You must be signed in to change notification settings

beelol/azana

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a35130b · Sep 9, 2016
Sep 9, 2016
Jun 28, 2016
Jul 10, 2016
Jul 11, 2016
Jun 29, 2016
Sep 9, 2016
Jun 28, 2016
Jun 28, 2016
Sep 9, 2016
Jun 30, 2016
Jun 28, 2016
Aug 19, 2016
Jul 15, 2016
Jun 29, 2016
Jun 29, 2016
Jul 1, 2016
Jun 28, 2016
Jun 28, 2016
Jun 28, 2016
Sep 8, 2016
Jun 30, 2016
Jun 29, 2016

Repository files navigation

Azana

Heroku link Note: This should be a link to your production site

Minimum Viable Product

Azana is a web application inspired by Asana that I will build using Rails, React, and Flux. By the end of Week 9, this app will, at a minimum, satisfy the following criteria:

  • Hosting on Heroku *
  • New account creation, login, and guest/demo login *
  • A production README, replacing this README
  • Tasks for projects
    • Ability to add names to tasks *
    • Ability to add descriptions to tasks *
    • Adequate seed data
    • Adequate styling
    • Smooth bug free navigation
  • Projects with lists of tasks
    • Ability to create tasks
    • Ability complete a task
    • Ability to delete a task
    • Ability for whole team to view projects
    • Adequate seed data
    • Adequate styling
    • Smooth bug free navigation
  • Teams to manage projects
    • Ability to join a team
    • Ability to invite to a team
    • Team permissions to hide projects from unwanted viewers
    • Adequate seed data
    • Adequate styling
    • Smooth bug free navigation
  • Profiles for users
    • Ability to add details including picture, name, role, department, and about.
    • Ability to view user profile.
    • Adequate seed data
    • Adequate styling
    • Smooth bug free navigation

Design Docs

Implementation Timeline

Phase 1: Backend setup and Front End User Authentication (1 day, W1 Tu 6pm)

Objective: Functioning rails project with Authentication

  • Set up new project
  • Create User model
  • Implement authentication
  • Add Sign Up/Sign In pages
  • Create basic landing page viewed upon login

Phase 2: Task Model, API, and basic APIUtil (1.5 days, W1 Th 12pm)

Objective: Tasks can be created, read, edited and destroyed through the API.

  • Create Task model
  • Create skeleton Team model
  • Create skeleton Project model
  • Seed the database with a small amount of test data
  • CRUD API for tasks (TasksController)
  • jBuilder views for tasks
  • Set up Webpack & Flux scaffold
  • Set up APIUtil to interact with the API
  • test out API interaction in the console.

Phase 3: Flux Architecture and Router (1.5 days, W1 F 6pm)

Objective: Tasks can be created, read, edited and destroyed with the user interface.

  • Set up the flux loop with skeleton files
  • Set up React Router
  • Implement each project related component, building out the flux loop as needed.
    • App
    • TasksIndex
    • TaskIndexItem
    • TaskForm

Phase 4: Start Styling (0.5 days, W2 M 12pm)

Objective: Existing pages (including signup/signin) will look good.

  • Create a basic style guide
  • Add basic colors & styles

Phase 5: Projects (1 day, W2 Tu 12pm)

Objective: Projects can be created, edited, and destroyed. Projects have a list of tasks which can be added to through the Project view.

  • Finish Project model
  • Finish Project component
  • build out API, Flux loop, and components for:
    • Project CRUD
    • Fetching tasks for projects
    • Adding tasks to a project.
    • Editing a task
    • Deleting tasks from a project.
    • Viewing tasks by projects.
  • Use CSS to style new views

Phase 6: Profile (1 days, W2 Th 12pm)

Objective: Users have a profile which can store a picture and information about a user.

  • Update User model to include profile info
  • Finish Profile component
  • build out API, Flux loop, and components for:
    • Viewing a user's profile
    • Adding information to a user's profile
    • Editing information on a user's profile
    • Style new elements

Phase 7: Team (0.5 days, W2 Th 6pm)

objective: Finish up the Team feature.

  • Finish the Team model
  • Finish the Team component
  • Allow inviting other users to a team.
  • Teams have many users, users many teams
  • Projects belong to a team, teams have many projects
  • Allow viewing, editing, creation, and destruction of a team.
  • Allow adding projects to, and removing projects from a team.

Phase 8: Styling Cleanup and Seeding (1 day, W2 F 6pm)

objective: Make the site feel more cohesive and awesome.

  • Get feedback on my UI from others
  • Refactor HTML classes & CSS rules
  • Add any missing app navigation to the menu
  • Add modals, transitions, and other styling flourishes.

Bonus Features (TBD)

  • Calendar
  • Comments on tasks
  • Assign team members to tasks
  • Conversations

About

Task assigning app for teams inspired by Asana.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published