{"id":21961847,"url":"https://github.com/trapcodeio/ownclipboard","last_synced_at":"2026-04-06T03:04:56.339Z","repository":{"id":39311150,"uuid":"218276516","full_name":"trapcodeio/ownclipboard","owner":"trapcodeio","description":"A cloud clipper","archived":false,"fork":false,"pushed_at":"2023-02-03T06:12:25.000Z","size":7665,"stargazers_count":4,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-29T08:42:19.337Z","etag":null,"topics":["clipboard","nodejs","vue-cli","xpresser"],"latest_commit_sha":null,"homepage":null,"language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trapcodeio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-10-29T11:59:41.000Z","updated_at":"2022-07-24T12:43:00.000Z","dependencies_parsed_at":"2023-02-08T16:31:31.261Z","dependency_job_id":null,"html_url":"https://github.com/trapcodeio/ownclipboard","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trapcodeio%2Fownclipboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trapcodeio%2Fownclipboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trapcodeio%2Fownclipboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trapcodeio%2Fownclipboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trapcodeio","download_url":"https://codeload.github.com/trapcodeio/ownclipboard/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227096597,"owners_count":17730377,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clipboard","nodejs","vue-cli","xpresser"],"created_at":"2024-11-29T10:19:06.392Z","updated_at":"2026-04-06T03:04:56.279Z","avatar_url":"https://github.com/trapcodeio.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OwnClipboard\nDemo [ownclipboard.com](https://ownclipboard.com)\n\nOwnClipboard was built out of the need to copy/paste text across multiple devices via an application or direct browser access.\n\nAlso, **Own**Clipboard as the name says was built to be owned, meaning that you can host your **own** clipboard on\nyour **own** server with same functions but this time with your data in your control.\n\n\n## Tech Stack\n### Frontend\n- [VueJs](https://www.npmjs.com/package/vue)\n- [Vue-cli](https://www.npmjs.com/package/@vue/cli)\n- [Bulma](https://www.npmjs.com/package/bulma)\n- [Shred-Bootstrap](https://www.npmjs.com/package/shred-bootstrap)\n\n### Backend\n- [Nodejs](https://nodejs.org) (\u003e=12)\n- [XpresserJs](https://xpresserjs.com) (\u003e=0.2.24)\n- [xjs-cli](https://xpresserjs.com/xjs-cli.html) (\u003e=0.1.12)\n- [Mysql](https://www.npmjs.com/package/mysql)\n\n\n## First Time setup\nWe recommend you use **yarn** and already have Nodejs installed on your machine.\n\n##### Install Xjs-Cli (One Time)\nxjs-cli is the command line assistant of XpresserJs framework.\n```sh\nyarn global add xjs-cli\n```\nGlobal? yes global because you only need to install this once and it will assist you in all xpresser projects to generate controllers, models, events, migrations e.t.c\n\n\n```\ncd project_folder\n```\n\n##### Rename .Env\nRename `.env.example` to `.env` and fill in your desired settings.\n\n##### Install all dependencies\n```sh\nyarn install\n```\n\n##### Build frontend files.\n```sh\nyarn build\n```\n\n#### Migrate your database\nOut of the box without any deep dive **sqlite3** is supported. a `database.sqlite` file will be created once your server has started.\n\n##### Install Prod Tools (one Time)\nXpresser uses Nodejs best Mysql ORM [knex](https://www.npmjs.com/package/knex), for database querying and migrations.\nTo install **knex** and other production tools you **must** run\n```shell script\nxjs install-prod-tools\n```\nif the above failed saying \"Invalid command: install-prod-tools\", run it outside your project root.\neg\n```shell script\ncd backend\nxjs install-prod-tools\n```\n\nAfter installation, **knex** should be available on your machine.\nNow run `xjs  migrate` to create our tables and database structure\n```shell script\nxjs migrate\n```\n\n### Start Backend Server\n##### Development\n```shell script\nnode ownclipboard.js\n# or\nxjs start\n```\nusing `xjs start` enables server auto reload using `nodemon`.\n\nIn development your server can be stopped by quitting your console.\n\n##### Production\nIn production, your server will be handled by a production tool installed by `xjs install-prod-tools` called [pm2](https://www.npmjs.com/package/pm2)\n```shell script\n# START\nxjs start --prod\n# STOP\nxjs stop server\n```\n\nThat's all! You should have your **own**clipboard up and running on your server.\n\n\n##### Compiles and hot-reloads for development\nJust like every vue-cli app you can enable hot-reload using\n```sh\nyarn run serve\n```\nNote: the above will spring up a development server that will be in a different port.\nBackend server also needs to be running in development in order to connect perfectly.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrapcodeio%2Fownclipboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrapcodeio%2Fownclipboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrapcodeio%2Fownclipboard/lists"}