Skip to content

📋 A command line note taking app so simple that even your granny will love it!

License

Notifications You must be signed in to change notification settings

synlestidae/tnote

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tnote

GitHub license Supported python versions Requirements Status Build Status

                            _________ _        _______ _________ _______ 
                            \__   __/( (    /|(  ___  )\__   __/(  ____ \
                               ) (   |  \  ( || (   ) |   ) (   | (    \/
                               | |   |   \ | || |   | |   | |   | (__    
                               | |   | (\ \) || |   | |   | |   |  __)   
                               | |   | | \   || |   | |   | |   | (      
                               | |   | )  \  || (___) |   | |   | (____/\
                               )_(   |/    )_)(_______)   )_(   (_______/

A dead simple command line note taking app for you, built while learning peewee (ORM)

Demo

Watch a live demo of it working here

asciicast

Here's the link to previous version if you are interested!

Features

  • Dead simple to use. Even your granny would be able to use it. No seriously!
  • Add your precious note with it's
    • title
    • content
    • tags Almost everything you need I guess(pstt you ask for feature requests here)
  • Searching for notes is hassle free in tnote. It supports full text search for notes
    • Search your notes either by it's
      • content
      • tags in it Either way, you will always find what you want!
  • Ability to add and remove tags for each note.
  • Adds timestamp for each note which has been added.
  • Written in uncomplicated python.

Need I say more?

Installation

  1. $ git clone https://github.com/prodicus/tnote

  2. $ cd tnote && pip install -r requirements.txt

Fire it up! 🌋

  1. $ ./journal.py

Contributing

This app was created in a timespan of 2 hours while learning to use peewee. So don't be shy to make some PR's here 😄

NOTE

I am using Sqlite as the db and the schema of the database is like this

$ sqlite3 diary.db 
-- Loading resources from /home/tasdik/.sqliterc

SQLite version 3.8.6 2014-08-15 11:46:33
Enter ".help" for usage hints.
sqlite> .schema
CREATE TABLE "diaryentry" ("id" INTEGER NOT NULL PRIMARY KEY, "title" VARCHAR(255) NOT NULL, "content" TEXT NOT NULL, "timestamp" DATETIME NOT NULL, "tags" VARCHAR(255) NOT NULL);
sqlite> .tables
diaryentry
sqlite> pragma table_info([diaryentry]);
cid         name        type        notnull     dflt_value  pk        
----------  ----------  ----------  ----------  ----------  ----------
0           id          INTEGER     1                       1         
1           title       VARCHAR(25  1                       0         
2           content     TEXT        1                       0         
3           timestamp   DATETIME    1                       0         
4           tags        VARCHAR(25  1                       0 
sqlite>

To-do

  • Add unit tests. Like real quick!
  • Add python2 support
  • Add tags support for notes
  • Add option to add title for notes
  • Add option to search for notes using content
  • Add option to search for notes using tags
  • Add option to search for notes using title
  • Add option to search for notes using timestamp
  • Make it pip installable
  • Encrypt the .db file using Sqlcipher
  • Add colorized text to the notes for improved UI
  • Add better UI using urwid

Contributers

A big shout out to all the contributers, more specifically to these guys

Issues

You can report the bugs at the issue tracker

OR

You can tweet me if you can't get it to work. In fact, you should tweet me anyway.

License

Built with ♥ by Tasdik Rahman under MIT License

You can find a copy of the License at http://prodicus.mit-license.org/

About

📋 A command line note taking app so simple that even your granny will love it!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%