Metadata-Version: 2.1
Name: snippy
Version: 0.11.0
Summary: Snippy is a software development and maintenance notes manager.
Home-page: https://github.com/heilaaks/snippy
Author: Heikki J. Laaksonen
Author-email: laaksonen.heikki.j@gmail.com
License: GNU Affero General Public License v3.0 or later
Keywords: notes markdown yaml text command-line cli server backend docker software-engineering
Platform: Linux
Platform: MacOS
Platform: Microsoft
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Natural Language :: English
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Documentation
Classifier: Topic :: Utilities
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
Description-Content-Type: text/x-rst
Requires-Dist: importlib-metadata ; python_version != "3.4"
Requires-Dist: pyyaml ; python_version != "3.4"
Requires-Dist: importlib-metadata (==0.23) ; python_version == "3.4"
Requires-Dist: pyyaml (<=5.2) ; python_version == "3.4"
Requires-Dist: colorama ; sys_platform == "win32"
Provides-Extra: devel
Requires-Dist: sphinxcontrib-openapi (==0.6.0) ; extra == 'devel'
Requires-Dist: sphinx-rtd-theme (==0.4.3) ; extra == 'devel'
Requires-Dist: sphinx-autobuild (==0.7.1) ; extra == 'devel'
Requires-Dist: falcon (==2.0.0) ; extra == 'devel'
Requires-Dist: jsonschema (==3.2.0) ; extra == 'devel'
Requires-Dist: bandit (==1.6.2) ; extra == 'devel'
Requires-Dist: flake8 (==3.7.9) ; extra == 'devel'
Requires-Dist: logging-tree (==1.8.1) ; extra == 'devel'
Requires-Dist: pluggy (==0.13.1) ; extra == 'devel'
Requires-Dist: pprintpp (==0.4.0) ; extra == 'devel'
Requires-Dist: pyflakes (==2.1.1) ; extra == 'devel'
Requires-Dist: pytest-cov (==2.8.1) ; extra == 'devel'
Requires-Dist: pytest-mock (==2.0.0) ; extra == 'devel'
Requires-Dist: pytest-xdist (==1.31.0) ; extra == 'devel'
Requires-Dist: requests ; extra == 'devel'
Requires-Dist: psycopg2 (==2.8.4) ; (platform_python_implementation == "CPython") and extra == 'devel'
Requires-Dist: psycopg2cffi (==2.8.1) ; (platform_python_implementation == "PyPy") and extra == 'devel'
Requires-Dist: colorama ; (python_version != "3.4") and extra == 'devel'
Requires-Dist: gunicorn (==19.10.0) ; (python_version <= "3.3") and extra == 'devel'
Requires-Dist: sphinx (==1.8.5) ; (python_version <= "3.4") and extra == 'devel'
Requires-Dist: pytest (==4.6.9) ; (python_version <= "3.4") and extra == 'devel'
Requires-Dist: mock (==3.0.5) ; (python_version <= "3.5") and extra == 'devel'
Requires-Dist: openapi2jsonschema (==0.9.0) ; (python_version <= "3.6") and extra == 'devel'
Requires-Dist: pylint (==1.9.5) ; (python_version == "2.7.*") and extra == 'devel'
Requires-Dist: docker (==4.2.0) ; (python_version == "2.7.*" or python_version >= "3.5") and extra == 'devel'
Requires-Dist: tox (==3.14.5) ; (python_version == "2.7.*" or python_version >= "3.5") and extra == 'devel'
Requires-Dist: colorama (==0.4.1) ; (python_version == "3.4") and extra == 'devel'
Requires-Dist: docker (==3.7.3) ; (python_version == "3.4.*") and extra == 'devel'
Requires-Dist: pylint (==2.3.1) ; (python_version == "3.4.*") and extra == 'devel'
Requires-Dist: tox (==3.14.0) ; (python_version == "3.4.*") and extra == 'devel'
Requires-Dist: gunicorn (==20.0.4) ; (python_version >= "3.4") and extra == 'devel'
Requires-Dist: sphinx (==2.4.4) ; (python_version >= "3.5") and extra == 'devel'
Requires-Dist: pylint (==2.4.4) ; (python_version >= "3.5") and extra == 'devel'
Requires-Dist: pytest (==5.3.5) ; (python_version >= "3.5") and extra == 'devel'
Requires-Dist: mock (==4.0.1) ; (python_version >= "3.6") and extra == 'devel'
Requires-Dist: openapi2jsonschema (==0.9.1) ; (python_version >= "3.7") and extra == 'devel'
Provides-Extra: docs
Requires-Dist: sphinxcontrib-openapi (==0.6.0) ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme (==0.4.3) ; extra == 'docs'
Requires-Dist: sphinx-autobuild (==0.7.1) ; extra == 'docs'
Requires-Dist: sphinx (==1.8.5) ; (python_version <= "3.4") and extra == 'docs'
Requires-Dist: sphinx (==2.4.4) ; (python_version >= "3.5") and extra == 'docs'
Provides-Extra: server
Requires-Dist: falcon (==2.0.0) ; extra == 'server'
Requires-Dist: jsonschema (==3.2.0) ; extra == 'server'
Requires-Dist: psycopg2 (==2.8.4) ; (platform_python_implementation == "CPython") and extra == 'server'
Requires-Dist: psycopg2cffi (==2.8.1) ; (platform_python_implementation == "PyPy") and extra == 'server'
Requires-Dist: gunicorn (==19.10.0) ; (python_version <= "3.3") and extra == 'server'
Requires-Dist: gunicorn (==20.0.4) ; (python_version >= "3.4") and extra == 'server'
Provides-Extra: test
Requires-Dist: falcon (==2.0.0) ; extra == 'test'
Requires-Dist: jsonschema (==3.2.0) ; extra == 'test'
Requires-Dist: bandit (==1.6.2) ; extra == 'test'
Requires-Dist: flake8 (==3.7.9) ; extra == 'test'
Requires-Dist: logging-tree (==1.8.1) ; extra == 'test'
Requires-Dist: pluggy (==0.13.1) ; extra == 'test'
Requires-Dist: pprintpp (==0.4.0) ; extra == 'test'
Requires-Dist: pyflakes (==2.1.1) ; extra == 'test'
Requires-Dist: pytest-cov (==2.8.1) ; extra == 'test'
Requires-Dist: pytest-mock (==2.0.0) ; extra == 'test'
Requires-Dist: pytest-xdist (==1.31.0) ; extra == 'test'
Requires-Dist: requests ; extra == 'test'
Requires-Dist: psycopg2 (==2.8.4) ; (platform_python_implementation == "CPython") and extra == 'test'
Requires-Dist: psycopg2cffi (==2.8.1) ; (platform_python_implementation == "PyPy") and extra == 'test'
Requires-Dist: gunicorn (==19.10.0) ; (python_version <= "3.3") and extra == 'test'
Requires-Dist: pytest (==4.6.9) ; (python_version <= "3.4") and extra == 'test'
Requires-Dist: mock (==3.0.5) ; (python_version <= "3.5") and extra == 'test'
Requires-Dist: pylint (==1.9.5) ; (python_version == "2.7.*") and extra == 'test'
Requires-Dist: docker (==4.2.0) ; (python_version == "2.7.*" or python_version >= "3.5") and extra == 'test'
Requires-Dist: tox (==3.14.5) ; (python_version == "2.7.*" or python_version >= "3.5") and extra == 'test'
Requires-Dist: docker (==3.7.3) ; (python_version == "3.4.*") and extra == 'test'
Requires-Dist: pylint (==2.3.1) ; (python_version == "3.4.*") and extra == 'test'
Requires-Dist: tox (==3.14.0) ; (python_version == "3.4.*") and extra == 'test'
Requires-Dist: gunicorn (==20.0.4) ; (python_version >= "3.4") and extra == 'test'
Requires-Dist: pylint (==2.4.4) ; (python_version >= "3.5") and extra == 'test'
Requires-Dist: pytest (==5.3.5) ; (python_version >= "3.5") and extra == 'test'
Requires-Dist: mock (==4.0.1) ; (python_version >= "3.6") and extra == 'test'

|badge-pypiv| |badge-pys| |badge-pyv| |badge-cov| |badge-docs| |badge-build| |badge-docker|

Snippy
======

  I can't remember how - I just remember what.

Snippy is a software development and maintenance notes manager. It allows
organizing and sharing examples and solutions from self hosted or shared
storage through command line interface or via REST API server. Snippy may
be able to help you for example when working with different open source
components that all have different commands, settings and issues.

Features
========

Main features include:

- Use from Linux command line or from a `REST API server`_ as in `Heroku example`_.
- Run with a self-hosted SQLite or shared PostgreSQL database.
- Manage notes in three categories: snippets, solutions and references.
- Supports Markdown, YAML, JSON and text formats.
- Organize notes with metadata like groups, tags and links.

Installation
============

To install as a tool, run:

.. code:: text

    pip install snippy --user

To install as a server, run:

.. code:: text

    docker pull docker.io/heilaaks/snippy:latest

Usage
=====

.. image:: https://asciinema.org/a/cssisV5qtLlaxeYORblrEf7YL.png
    :target: https://asciinema.org/a/cssisV5qtLlaxeYORblrEf7YL
    :alt: Snippy in action!

Contributing
============

This is a personal hobby project to try to organize maintenance notes when
working with large software projects. Author is happy to hear if this project
has been actually used by anyone. Please post bug reports of feature requests
through GitLab issues.

This project got inspiration from the `Buku <https://github.com/jarun/Buku>`_.

Related work
============

- `tldr <https://github.com/tldr-pages/tldr>`_
- `cheat <https://github.com/cheat/cheat>`_
- `Buku <https://github.com/jarun/Buku>`_
- `CRUD in 2 minutes <https://www.youtube.com/watch?v=kMs-Tltf_Og>`_


.. |badge-pypiv| image:: https://img.shields.io/pypi/v/snippy.svg
   :target: https://pypi.python.org/pypi/snippy

.. |badge-pys| image:: https://img.shields.io/pypi/status/snippy.svg
   :target: https://pypi.python.org/pypi/snippy

.. |badge-pyv| image:: https://img.shields.io/pypi/pyversions/snippy.svg
   :target: https://pypi.python.org/pypi/snippy

.. |badge-cov| image:: https://codecov.io/gh/heilaaks/snippy/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/heilaaks/snippy

.. |badge-docs| image:: https://readthedocs.org/projects/snippy/badge/?version=latest
   :target: http://snippy.readthedocs.io/en/latest/?badge=latest

.. |badge-build| image:: https://travis-ci.org/heilaaks/snippy.svg?branch=master
   :target: https://travis-ci.org/heilaaks/snippy

.. |badge-pyup| image:: https://pyup.io/repos/github/heilaaks/snippy/shield.svg
   :target: https://pyup.io/repos/github/heilaaks/snippy/

.. |badge-docker| image:: https://images.microbadger.com/badges/image/heilaaks/snippy.svg
   :target: https://hub.docker.com/r/heilaaks/snippy

.. _REST API server: https://app.swaggerhub.com/apis/heilaaks/snippy/0.11.0

.. _development: https://snippy.readthedocs.io/en/latest/development.html

.. _Heroku example: https://snippy-server.herokuapp.com/api/snippets?sall=docker&limit=5


