Skip to content

morales-martin/todo-app

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn

Chord Search

Guitar chord search platform
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Contributing
  4. License
  5. Contact

About The Project

This project uses Next.JS and AWS Appsync to create a 'Todo' web platform, with NextAuth.js for authentication. A 'Todo' web platform provides users with a task management interface that allows for the creation, update, and deletion of tasks. Additional functions in this project include: task flags / category 'chips', task status filtering, user authentication, user-authenticated saved tasks, and real-time updates.

  • Tasks Flags / Category 'Chips': Users are able to add custom flags or categories to tasks once created. Multiple chips can be added to a task. Individual chips can be removed from a task.
  • Task Status Filtering: The task list view can be filtered by three options: "All", "Todo", and "Completed". "All" will list all tasks associated with the session / user. "Todo" will list all tasks that have not been marked as completed. "Completed" will list all tasks that have been marked as complete. Note: A task is marked as complete if its corresponding checkbox has been checked.
  • User authentication: Users are able to log in using their Google account.
  • User-authenticated saved tasks / sessions: Once logged in, user sessions / tasks are saved to a database for later use.
  • Real-time updates: If a user has more than one active session while logged in, all sessions are updated with task updates.

(back to top)

Built With

React.js Next.js

(back to top)

Installation

To get a local copy up and running follow these steps.

  1. Clone the repo

    git clone https://github.com/morales-martin/todo-app.git
  2. Install NPM packages

    npm install
  3. Create a .env file in your application's root directory with the following variables:

    GOOGLE_ID = /** INSERT GOOGLE APP ID **/
    GOOGLE_SECRET = /** INSERT GOOGLE SECRET **/
    NEXTAUTH_SECRET=/** INSERT NEXTAUTH SECRET **/
  4. Run the development server:

    npm run dev
    # or
    yarn dev
    # or
    pnpm dev 
  5. Open http://localhost:3000 with your browser to see the result.

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Martin Morales - morales-martin@outlook.com

Project Link: https://github.com/morales-martin/todo-app

(back to top)

About

Building a todo app with Next.js and AWS Amplify!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published