{"id":21807690,"url":"https://github.com/yeshan333/flask-react-todolist","last_synced_at":"2025-04-13T20:52:38.011Z","repository":{"id":38986770,"uuid":"234028095","full_name":"yeshan333/Flask-React-ToDoList","owner":"yeshan333","description":"ToDo APP，front-end：React、Material UI，back-end RESTful APIs：Flask","archived":false,"fork":false,"pushed_at":"2024-06-18T00:45:28.000Z","size":2350,"stargazers_count":5,"open_issues_count":9,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-04-10T04:45:29.118Z","etag":null,"topics":["backend-services","flask","frontend-app","react","restful-api"],"latest_commit_sha":null,"homepage":"https://hardcore-swirles-fbea59.netlify.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yeshan333.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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":"2020-01-15T07:55:44.000Z","updated_at":"2023-06-16T12:07:46.000Z","dependencies_parsed_at":"2024-04-17T01:34:00.125Z","dependency_job_id":"47d28f98-e18d-40b3-9494-1b60a01fc7a4","html_url":"https://github.com/yeshan333/Flask-React-ToDoList","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yeshan333%2FFlask-React-ToDoList","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yeshan333%2FFlask-React-ToDoList/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yeshan333%2FFlask-React-ToDoList/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yeshan333%2FFlask-React-ToDoList/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yeshan333","download_url":"https://codeload.github.com/yeshan333/Flask-React-ToDoList/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248782283,"owners_count":21160716,"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":["backend-services","flask","frontend-app","react","restful-api"],"created_at":"2024-11-27T12:47:03.378Z","updated_at":"2025-04-13T20:52:37.988Z","avatar_url":"https://github.com/yeshan333.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flask-React-ToDo\n![GitHub last commit (branch)](https://img.shields.io/github/last-commit/yeshan333/Flask-React-ToDoList/master) ![Netlify](https://img.shields.io/netlify/be5ea8e0-a8a8-4854-9a12-0aa0ba80f70f) ![GitHub issues](https://img.shields.io/github/issues-raw/yeshan333/Flask-React-ToDoList) [![Build Status](https://travis-ci.com/yeshan333/Flask-React-ToDoList.svg?branch=master)](https://travis-ci.com/yeshan333/Flask-React-ToDoList) [![Netlify Status](https://api.netlify.com/api/v1/badges/05c648e3-71bd-4be1-bd7a-bf6a2cafed5a/deploy-status)](https://app.netlify.com/sites/vibrant-benz-4eff09/deploys)\n\n---\n\n基于React和Flask的前后端分离项目入门级 Demo--ToDo WebApp\n\n![demo.png](https://img.vim-cn.com/f8/f359b94189d1d2e2f1e73bb03ee9ffd54fd10b.gif)\n\nemail: 1329441308@qq.com; password: 1234567890\n\n---\n\n## 简介😘\n\n一个基础的 To-Do WebApp，实现了基本的CRUD功能，数据库使用的是MongDB。前端的React APP使用Ajax与后端的Flask RESTful APIs交互。\n\n### 项目部署\n\n- React APP部署在Netlify，👉[https://kind-mclean-15510a.netlify.com/](https://kind-mclean-15510a.netlify.com/)，[![Netlify Status](https://api.netlify.com/api/v1/badges/be5ea8e0-a8a8-4854-9a12-0aa0ba80f70f/deploy-status)](https://app.netlify.com/sites/kind-mclean-15510a/deploys)\n- React + Ajax 部署在Netlify，👉[https://vibrant-benz-4eff09.netlify.com/](https://vibrant-benz-4eff09.netlify.com/)\n- React + Ajax + 简略登录，[👉https://hardcore-swirles-fbea59.netlify.com/](https://hardcore-swirles-fbea59.netlify.com/)\n- Flask RESTful APIs部署在Heroku，👉[https://flask-react-todo.herokuapp.com/api/v1/info](https://flask-react-todo.herokuapp.com/api/v1/info)\n\n前端部署分支：[netlify-frontend-service](https://github.com/yeshan333/Flask-React-ToDoList/tree/netlify-frontend-service)\n\nREST后端部署分支：[heroku-backend-service](https://github.com/yeshan333/Flask-React-ToDoList/tree/heroku-backend-service)\n\nDocker 部署：[https://github.com/yeshan333/Flask-React-ToDoList/tree/docker](https://github.com/yeshan333/Flask-React-ToDoList/tree/docker)\n\n**REST 资源未做保护(Bearer Token 实现分支: https://github.com/yeshan333/Flask-React-ToDoList/tree/bearer-token)**\n\n### 项目依赖\n\n- 前端React部分主要依赖\n  - Material UI\n  - axios\n  - React\n  - React-Router-Dom\n- 后端Flask部分主要依赖\n  - Flask\n  - pymongo\n  - gunicorn\n  - flask-cors\n- 后端单元测试依赖\n  - nose2 0.9.1\n\n## To-Dos✅\n\n- [ ] 前端性能优化\n- [x] 应用容器化部署\n- [ ] 前端UX/UI优化\n- [x] 加个登录表单\n- [ ] 登录安全性，资源保护\n- [ ] 环境配置剥离\n\n## 开源许可证📝\n\nApache 2.0\n\n---\n\nStart frontend development server\n\n```shell\ncd frontend\n# install dependencies\nnpm install\n# start front-end service\nnpm start  # served at http://localhost:3000/\n```\n\nStart backend development server\n\n```shell\ncd backend\n# create virtual environment\nvirtualenv env\n# activate virtual environment\nsource env/Scripts/activate\n# install dependencies\npip install -r requirements.txt\n# initial Mongo Database, .\\mongod.exe --config .\\mongod.conf\nflask create-database  # drop database: flask drop-database name\n# start flask service\nflask run  # served at http://localhost:5000/\n```\n\n---\n\nRun in Docker Container @docker-compose🤣\n\n```bash\ngit clone https://github.com/yeshan333/Flask-React-ToDoList\ncd Flask-React-ToDoList\ngit checkout docker\n\ndocker-compose up\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyeshan333%2Fflask-react-todolist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyeshan333%2Fflask-react-todolist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyeshan333%2Fflask-react-todolist/lists"}