Skip to content

Commit

Permalink
Nothing to see here
Browse files Browse the repository at this point in the history
  • Loading branch information
IRus committed Aug 14, 2023
1 parent a36ec58 commit 33388ce
Show file tree
Hide file tree
Showing 381 changed files with 5,218 additions and 988 deletions.
1 change: 1 addition & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
VIPASSANA_SERVER_RESOURCES=./frontend/dist
1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
patreon: heapyhop
85 changes: 85 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: "Build"
on:
- push
- pull_request
jobs:
check:
if: ${{ github.event_name == 'pull_request' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 14.x
- run: yarn install --check-cache
working-directory: frontend
build-backend:
name: "Build Backend Application"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
java-version: "17"
distribution: "zulu"
- run: ./gradlew check distTar
- uses: actions/upload-artifact@v2
with:
name: "Backend Application"
path: "build/distributions/backend.tar"
retention-days: 1
build-frontend:
name: "Build Frontend Application"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: "14.x"
- working-directory: frontend
run: yarn install
- working-directory: frontend
run: yarn run build
- uses: actions/upload-artifact@v2
with:
name: "Frontend Application"
path: "frontend/dist/"
retention-days: 1
build-and-push-backend-image:
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
needs:
- build-backend
- build-frontend
steps:
- name: "Checkout"
uses: actions/checkout@v2
- uses: actions/download-artifact@v2
with:
name: "Backend Application"
path: "build/distributions/"
- name: "Untar files"
run: mkdir -p build/install && tar -xvf build/distributions/backend.tar -C $_
- uses: actions/download-artifact@v2
with:
name: "Frontend Application"
path: "frontend/dist/"
- name: "Set up QEMU"
uses: docker/setup-qemu-action@v1
- name: "Set up Docker Buildx"
uses: docker/setup-buildx-action@v1
- name: "Login to GHCR"
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: "Build and push"
uses: docker/build-push-action@v2
with:
platforms: linux/amd64,linux/arm64
context: .
push: true
tags: |
ghcr.io/heapy/vipassana:main
ghcr.io/heapy/vipassana:b${{ github.run_number }}
13 changes: 7 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# Idea configs
.idea
# Intellij Idea
/.idea/
out/
*.iml
*.iws
*.ipr

# Gradle specific files
# Gradle
.gradle
build
build/

# Common files
*.log
# Project
.env
9 changes: 0 additions & 9 deletions .travis.yml

This file was deleted.

4 changes: 4 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
FROM bellsoft/liberica-openjre-alpine:17
COPY /build/install/backend /backend
COPY /frontend/dist /frontend
ENTRYPOINT /backend/bin/backend
158 changes: 141 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,149 @@
Stack ToDo
==========
# vipassana [![Build](https://github.com/Heapy/vipassana/actions/workflows/build.yml/badge.svg)](https://github.com/Heapy/vipassana/actions/workflows/build.yml)

Web implementation of Stack ToDo Bash script.
## Project goals

- Help to collect information in single place and connect it;
- Prioritize and schedule tasks (task can be anything, from learning and coding to resting and playing games);
- Help to focus by removing multiple sources of distraction, and consolidate them in single system that care about user, not profit.

# TODO:
## Features

Objectives
----------
* [Local-first](https://www.inkandswitch.com/local-first.html)
* Bookmarks
- Firefox extension
- Add bookmarks directly to the system
- Suggest urls from the system
- Save all visited pages and content automatically
- Example: [fetching.io](http://fetching.io/)
- Example projects
- [https://saved.io/](https://saved.io/)
- [https://booky.io/](https://booky.io/)
- [https://raindrop.io/](https://raindrop.io/)
- [https://historio.us/](https://historio.us/)
- [del.icio.us](https://en.wikipedia.org/wiki/Delicious_(website))
- Social Bookmarks
- [pinboard.in](https://en.wikipedia.org/wiki/Pinboard_(website))
- Social Bookmarks
- [Instapaper](https://en.wikipedia.org/wiki/Instapaper)
- Save content
- Annotate content
- [Pocket](https://en.wikipedia.org/wiki/Pocket_(service))
- Save content
- Annotate content
- [Diigo](https://en.wikipedia.org/wiki/Diigo)
- Annotate content
* Contacts
- CardDAV
- Firefox extension
- Suggestions for **to** field in fastmail/gmail/etc
- Add birthdays to Unified Stream
* Calendar
- Put anything as event to calendar
- Notifications to Unified Stream
- Export to other systems (Google Calendar, Fastmail, Apple Calendar, etc)
- Event types:
- Notification - don't forget to do smth at particular time
- Event - you'll watch cinema for 2 hours at that location
- Add "Travel time"
* Tasks
- Create tasks in Web UI, telegram bot, PWA
- Task tree structure (Checkvist-like)
- Track time (in-progress/stop buttons, notify if more than one in progress)
- Repeated tasks (habits)
- Display "streak" under current reminder in Unified Stream
- Usually represent as number of green/red circles
* File store
- Store and preview files
- Edit files (distant future)
* Project/Topic
- Attach different entities to project/topic
- View and edit them in single place
- Sort by type
- Allow arranging types
- Sort by date
* Expense tracker (Receipt Keeper)
- Connect with a phone through ifttt (SMS)
- Parse SMS and add to stream of expenses
- Currency support (history of exchange rates)
- Connect to Apple Pay?
* JMAP Client
- Connect to Fastmail
* Twitter Client
* RSS Client
- [RSSHub](https://github.com/DIYgod/RSSHub) - utilize as microservice for certain feeds
- Eventually build own modules for common social networks, forums, websites without RSS, etc
* Episodes (Serials, shows) Calendar
* Entities tracking
- Cinema, Films
- Books
- It would be cool to grab few pages or maybe chapter and display as event in the stream, so Unified Stream will "ask" you to read daily dose of book. This way it's possible to estimate books/year rare, or! allocate enough time for reading.
- Courses
- Similar to books, integration with coursera/etc and allocate time for making progress in course
- Coffee (Different kinds)
- Tea (Different kinds)
* Document collaboration tools
- This is for far future
- Basically CRDT-based google docs/sheets/etc
* Location tracker
- Track user location (phone send location)
- Import location bookmarks from Google and Maps.me
* Podcast tracker
- Gather multiple RSS, filter and use it in any podcast App
- Speech-to-text + Search
* Blog/Site CMS
- See ideas I want to implement in ObjectStyle CMS
* TL-DR
- Add notes to video
- Speech-to-text + Search (Or just Search by subtitles, youtube-api for subtitles?)
* Timeline with all modifications for every entity (Just result of CRDT)
* Monthly/Yearly reports on read/listen/view, finished tasks, popular topics, etc
* **Unified Stream** - Core concept
- All entities displayed in single stream of events
- Mark important/not important accounts (twitter, instagram, youtube, etc) (id)
- Batch all not important account updates once per day/week/month
- Mark garbage events, add score to event (ML), filter garbage
- User can update automatically assigned score
- Estimate Unified Stream Event processing time (cost)
- Video, Podcast, etc - exact time
- Article - approximation of character count
- Event - time + travel time
- Task - user task estimate
- Estimate and show total processing time of current queue
- Use score to drop unimportant, but costly events
- Create separate stream of **drop** events to process in free-time
- Any event can be shared with group. Group is just abstraction on one or more Users
- A shared event will appear in other users streams
- Any event can have tags, tags can be set automatically by event source or ML
- Any event can have comments (for single user it's just note)
- Deduplication of events
- Try to combine similar events and show them together
- Try to find similar events in past and show them in detailed view

JBookmarks - should be useful and simple, and solve following problems:
## Examples of similar systems

* Good accessibility and user experience
* Store bookmarks safely
* Simple search of bookmarks
* Easy to add new bookmarks
* The ability to share bookmarks with anyone
* [Jetbrains OMEA](https://www.jetbrains.com/omea/)
- email
- contacts
- documents
- files
- blogs
- transcripts
- newsgroups
- RSS feeds
- pics
- webpage bookmarks
- tasks
- instant messages
* [FriendFeed](https://en.wikipedia.org/wiki/FriendFeed)
- Own protocol [SUP](https://en.wikipedia.org/wiki/Simple_Update_Protocol)
- Supported Services - Check later for good one
* [Zotero](https://www.zotero.org/)
- Save/find references
- Organize research

Environment setup
-----------------
## Decentralized systems

Build status
------------
[![build status](https://travis-ci.org/IRus/JBookmarks.svg)](https://travis-ci.org/IRus/JBookmarks)
* [YaCy](https://en.wikipedia.org/wiki/YaCy)
- Distributed search engine
* [Hubzilla](https://zotlabs.org/page/hubzilla/hubzilla-project)
- Nomadic identity - **Research**
78 changes: 0 additions & 78 deletions build.gradle

This file was deleted.

Loading

0 comments on commit 33388ce

Please sign in to comment.