Giter Site home page Giter Site logo

tnote's Introduction

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/

tnote's People

Contributors

maxwellgerber avatar tasdikrahman avatar prodicus avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.