Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pawelmalak/snippet-box
Snippet Box is a simple self-hosted app for organizing your code snippets. It allows you to easily create, edit, browse and manage your snippets in various languages.
https://github.com/pawelmalak/snippet-box
self-hosted snippets snippets-library snippets-manager
Last synced: 13 days ago
JSON representation
Snippet Box is a simple self-hosted app for organizing your code snippets. It allows you to easily create, edit, browse and manage your snippets in various languages.
- Host: GitHub
- URL: https://github.com/pawelmalak/snippet-box
- Owner: pawelmalak
- License: mit
- Created: 2021-09-18T13:43:15.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-04-05T17:41:54.000Z (over 1 year ago)
- Last Synced: 2024-08-01T19:57:35.780Z (3 months ago)
- Topics: self-hosted, snippets, snippets-library, snippets-manager
- Language: TypeScript
- Homepage:
- Size: 1.09 MB
- Stars: 916
- Watchers: 12
- Forks: 78
- Open Issues: 41
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
- jimsghstars - pawelmalak/snippet-box - Snippet Box is a simple self-hosted app for organizing your code snippets. It allows you to easily create, edit, browse and manage your snippets in various languages. (TypeScript)
README
# Snippet Box
![Snippet library screenshot](./.github/img/snippets.png)
## Description
Snippet Box is a simple self-hosted app for organizing your code snippets. It allows you to easily create, edit, browse and manage your snippets in various languages. With built-in Markdown support, Snippet Box makes it very easy to add notes or simple documentation to your code.
## Technology
- Backend
- Node.js
- Typescript
- Express.js
- Sequelize ORM + SQLite
- Frontend
- React
- TypeScript
- Bootstrap
- Deployment
- Docker## Development
```sh
# clone repository
git clone https://github.com/pawelmalak/snippet-box
cd snippet-box# install dependencies (run only once)
npm run init# start backend and frontend development servers
npm run dev
```## Installation
### With Docker
#### Docker Hub
[Docker Hub image link](https://hub.docker.com/r/pawelmalak/snippet-box).
For arm platforms use `:arm` tag.#### Building image
```sh
# Building image for Linux
docker build -t snippet-box .# Build image for ARM
docker buildx build \
--platform linux/arm/v7,linux/arm64 \
-f Dockerfile.arm \
-t snippet-box:arm .
```#### Deployment
```sh
# run container
# for ARM use snippet-box:arm tag
docker run -p 5000:5000 -v /path/to/data:/app/data snippet-box
```#### Docker Compose
```yaml
version: '3'
services:
snippet-box:
image: pawelmalak/snippet-box:latest
container_name: snippet-box
volumes:
- /path/to/host/data:/app/data
ports:
- 5000:5000
restart: unless-stopped
```### Without Docker
Follow instructions from wiki - [Installation without Docker](https://github.com/pawelmalak/snippet-box/wiki/Installation-without-Docker)
## Functionality
- Search
- Search your snippets with built-in tags and language filters
- Pinned snippets
- Pin your favorite / important snippets to home screen for easy and quick access![Homescreen screenshot](./.github/img/home.png)
- Snippet library
- Manage your snippets through snippet library
- Easily filter and access your code using tags![Snippet library screenshot](./.github/img/snippets.png)
- Snippet
- View your code, snippet details and documentation
- Built-in syntax highlighting
- Easily perform snippet actions like edit, pin or delete from a single place![Snippet screenshot](./.github/img/snippet.png)
- Editor
- Create and edit your snippets from simple and easy to use editor![Editor screenshot](./.github/img/editor.png)
## Usage
### Search functionality
Visit wiki for search functionality and available filters reference: [Search functionality](https://github.com/pawelmalak/snippet-box/wiki/Search-functionality)