{"id":13829206,"url":"https://github.com/amoraitis/TodoList","last_synced_at":"2025-07-09T09:32:52.251Z","repository":{"id":38106407,"uuid":"152481140","full_name":"amoraitis/TodoList","owner":"amoraitis","description":"Simple todo-list app built with asp.net core mvc","archived":false,"fork":false,"pushed_at":"2023-07-25T06:42:30.000Z","size":827,"stargazers_count":152,"open_issues_count":16,"forks_count":127,"subscribers_count":11,"default_branch":"develop","last_synced_at":"2024-08-04T10:01:08.539Z","etag":null,"topics":["asp-net-core-identity","asp-net-core-mvc","docker","todolist","todolist-application"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amoraitis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-10T19:50:37.000Z","updated_at":"2024-07-20T06:15:35.000Z","dependencies_parsed_at":"2024-05-28T22:01:25.745Z","dependency_job_id":"04f319b3-099b-4054-8f2d-68b80e8af2eb","html_url":"https://github.com/amoraitis/TodoList","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amoraitis%2FTodoList","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amoraitis%2FTodoList/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amoraitis%2FTodoList/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amoraitis%2FTodoList/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amoraitis","download_url":"https://codeload.github.com/amoraitis/TodoList/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225533010,"owners_count":17484179,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asp-net-core-identity","asp-net-core-mvc","docker","todolist","todolist-application"],"created_at":"2024-08-04T10:00:27.037Z","updated_at":"2024-11-20T10:30:31.829Z","avatar_url":"https://github.com/amoraitis.png","language":"C#","funding_links":[],"categories":["Available Apps"],"sub_categories":[],"readme":"# About TodoList\n\n[![Build Status](https://travis-ci.com/amoraitis/TodoList.svg?branch=develop)](https://travis-ci.com/amoraitis/TodoList)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n[![codecov](https://codecov.io/gh/amoraitis/TodoList/branch/develop/graph/badge.svg)](https://codecov.io/gh/amoraitis/TodoList)\n[![first-timers-only](https://img.shields.io/badge/first--timers--only-friendly-blue.svg?style=flat-square)](https://www.firsttimersonly.com/)\n\nThis project is a simple but powerful web application to manage to-dos.\n\n## Features\n\n- Lightweight and fast.\n- Supports for two authentication factor.\n- Allows you to attach files in to-dos.\n- Allows you to specify due date and time in your to-dos.\n\n## Requirements\n\n- A Windows OS\n- .NET Core 2.2 or superior\n- SQL Server Express 2016 or superior\n- A SendGrid account\n- (Optional) Google, Facebook, Twitter, Microsoft API keys.\n\n## Set up\n\n1 - Clone this project running `git clone https://github.com/amoraitis/TodoList.git` in your terminal. If you haven't git installed can simply download it and unzip it.\n\n2 - Add your Sendgrid API Key by running `dotnet user-secrets set \"SendGrid:ServiceApiKey\" \"your_secret_key\"`.\n\n3 - Run the required infrastructure (PostgreSQL etc) for development purposes\n *  Go to the `TodoList/` folder by running the command `cd TodoList/`\n *  Run the command `docker-compose -f docker-dev-compose.yml up` to bring up the infrastructure. This will setup and run the PostgreSQL server locally.\n *  Note that a folder `pgdata` will be created. PostgreSQL data is persisted in this folder and can be used without having to re-create/seed data over and over during development. Delete this folder to remove any data created during development. \n\n4 - Go to the `TodoList/TodoList.Web` folder by running the command `cd TodoList/TodoList.Web` or manually navigating into the file system.\n\n5 - Run the command `dotnet tool install -g Microsoft.Web.LibraryManager.Cli` to install Libman.\n\n6 - Run the command `dotnet restore` to install all the dependencies.\n\n7 - Run the command `dotnet build` to compile the project.\n\n8 - Run the command `dotnet run` to start serving the project.\n\n9 - That it's, your application is running in `http://localhost:47818`.\n\n## Support for social login providers\n\nIf you want to allow your users to login with their social accounts, e.g. Facebook, follow instructions below.\n\n### Facebook\n1 - Follow this [guide](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/facebook-logins?view=aspnetcore-2.2#create-the-app-in-facebook) to generate AppID and AppSecret.\n\n2 - Execute the following instructions from `TodoList/TodoList.Web`: \n- `dotnet user-secrets set Authentication:Facebook:AppId \u003capp-id\u003e`\n- `dotnet user-secrets set Authentication:Facebook:AppSecret \u003capp-secret\u003e`\n\n### Google\n1 - Follow this [guide](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/google-logins?view=aspnetcore-2.2#create-a-google-api-console-project-and-client-id) to generate ClientID and ClientSecret.\n\n2 - Execute the following instructions from `TodoList/TodoList.Web`: \n- `dotnet user-secrets set Authentication:Google:ClientId \u003cclient-id\u003e`\n- `dotnet user-secrets set Authentication:Google:ClientSecret \u003cclient-secret\u003e`\n\n### Microsoft\n1 - Follow this [guide](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/microsoft-logins?view=aspnetcore-2.2#create-the-app-in-microsoft-developer-portal) to generate ClientID and ClientSecret.\n\n2 - Execute the following instructions from `TodoList/TodoList.Web`: \n- `dotnet user-secrets set Authentication:Microsoft:ClientId \u003cclient-id\u003e`\n- `dotnet user-secrets set Authentication:Microsoft:ClientSecret \u003cclient-secret\u003e`\n\n### Twitter\n1 - Follow this [guide](https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/twitter-logins?view=aspnetcore-2.2#create-the-app-in-twitter) to generate App ID and AppSecret.\n\n2 - Execute the following instructions from `TodoList/TodoList.Web`: \n- `dotnet user-secrets set Authentication:Twitter:ConsumerKey \u003cconsumer-key\u003e`\n- `dotnet user-secrets set Authentication:Twitter:ConsumerSecret \u003cconsumer-secret\u003e`\n\n## License\n\nTodoList is open-source software licensed under the [MIT license](LICENSE.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famoraitis%2FTodoList","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famoraitis%2FTodoList","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famoraitis%2FTodoList/lists"}