Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rohitpaulk/todoist-tribute
:white_check_mark: Todoist clone, written in Rails + Vue
https://github.com/rohitpaulk/todoist-tribute
Last synced: about 1 month ago
JSON representation
:white_check_mark: Todoist clone, written in Rails + Vue
- Host: GitHub
- URL: https://github.com/rohitpaulk/todoist-tribute
- Owner: rohitpaulk
- Created: 2017-07-16T23:32:50.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-16T09:58:45.000Z (almost 2 years ago)
- Last Synced: 2024-04-14T20:48:39.749Z (8 months ago)
- Language: TypeScript
- Homepage: http://thetuduapp.herokuapp.com/
- Size: 7.68 MB
- Stars: 216
- Watchers: 17
- Forks: 25
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- Open-Source-Ruby-and-Rails-Apps - todoist-tribute - Todoist clone, written in Rails + Vue 🔥 ✅ 🚀 (Happy Exploring 🤘)
README
> Imitation is the sincerest form of flattery.
This is a clone of the [Todoist](https://todoist.com/) web-app.
Here's how it looks:
![](/app/assets/images/week3.gif)
Visit [a live instance](http://thetuduapp.herokuapp.com/) to check it out!
You can also deploy your own copy to heroku:
[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/rohitpaulk/todoist-tribute)
### Installing locally
This is a standard [Rails](https://github.com/rails/rails) app, using [webpacker](https://github.com/rails/webpacker) to manage JS modules.
You'll need [Ruby](https://www.ruby-lang.org/en/), [bundler](http://bundler.io/), [yarn](https://yarnpkg.com/en/) and [Postgres](https://www.postgresql.org/) installed. All the following steps are to be executed in the root directory of this repository.
- Run `bundle install` to install the required Rubygems
- Run `yarn install` to install the required NPM packages
- Run `createdb tudu_development` to create a development database
- Run `rake db:migrate db:seed` to create database schema and sample records
- Run `rails s` to spin up the Rails dev server
- Run `./bin/webpack-dev-server` to spin up the webpack dev serverHit [localhost:3000](http://localhost:3000/) and you should be ready to go!
### Running tests
- Run `createdb tudu_testing` to create a testing database
- Run `rake test` to run Ruby tests
- Run `yarn test` to run JS tests### Under the hood
The backend is written in [Ruby](https://www.ruby-lang.org/en/) + [Rails](https://github.com/rails/rails), and the frontend in [Typescript](https://www.typescriptlang.org/) + [Vue.js](https://vuejs.org/).
A few interesting files to look at:
- [editor_nodes.ts]( https://github.com/rohitpaulk/todoist-tribute/blob/master/app/javascript/packs/helpers/editor_nodes.ts)
### Current Status
- [ ] Tasks
- [x] Creating tasks
- [x] Editing tasks
- [x] Completing tasks
- [x] Re-ordering tasks
- [ ] Nested/indented tasks
- [x] Projects
- [x] Switching between project views
- [x] Creating projects
- [x] Editing projects
- [x] Re-ordering projects
- [x] Deleting projects
- [x] Color picker
- [x] Labels
- [x] Creating labels
- [x] Editing labels
- [x] Viewing tasks for a label
- [x] Rendering labels in task-item
- [x] Assigning labels via task-editor
- [ ] Priorities
- [ ] Due dates
- [ ] Filters
- [ ] Karma
- [ ] Keyboard Shortcuts
- [ ] Task List
- [x] `a` to open editor at bottom of list
- [ ] `A` to open editor at top of list
- [ ] Task Editor
- [x] `Enter` to create new task and open editor below
- [x] `Esc` to cancel
- [ ] `Shift + Enter` to save and create new one below
- [ ] `Ctrl + Enter` to save and create new one above