{"id":17918576,"url":"https://github.com/djaiss/peopleos","last_synced_at":"2025-03-22T16:16:07.321Z","repository":{"id":272999399,"uuid":"916067981","full_name":"djaiss/peopleOS","owner":"djaiss","description":"Bullshit free personal CRM 🧑‍🤝‍🧑","archived":false,"fork":false,"pushed_at":"2025-03-17T22:08:50.000Z","size":5562,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-18T12:47:34.782Z","etag":null,"topics":["alpinejs","crm","laravel","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/djaiss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-13T11:52:21.000Z","updated_at":"2025-03-17T22:08:52.000Z","dependencies_parsed_at":"2025-01-17T23:46:18.036Z","dependency_job_id":"c2a33123-723e-4a4b-b04b-65027ded769c","html_url":"https://github.com/djaiss/peopleOS","commit_stats":null,"previous_names":["djaiss/peopleos"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaiss%2FpeopleOS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaiss%2FpeopleOS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaiss%2FpeopleOS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djaiss%2FpeopleOS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/djaiss","download_url":"https://codeload.github.com/djaiss/peopleOS/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244982060,"owners_count":20542301,"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":["alpinejs","crm","laravel","php"],"created_at":"2024-10-28T20:11:52.751Z","updated_at":"2025-03-22T16:16:07.313Z","avatar_url":"https://github.com/djaiss.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"## What is this?\n\nPeopleOS is the spiritual successor of Monica, the personal CRM.\n\n### Features\n\n- A powerful contact management system, with features like adding family information, work information, etc...\n- A powerful, and fully customizable journal system, that lets you document your life.\n\nData is also fully encrypted at rest, which is nice in case someone wants to peak into the database.\n\n### Why a Monica sequel?\n\nHow is PeopleOS different?\n\n- it's designed to be much simpler, more focused.\n- it's designed to be really fast.\n- data is fully encrypted at rest. This comes with severe drawbacks, but at least data is secure.\n- it's not using Javascript frameworks for the frontend. We use JS to enhance the user experience, but the core is still server-side rendered.\n- the code is simple, and predictable.\n- it's designed to be self-hosted.\n- it's designed to be API-driven.\n\n## Installation\n\npeopleOS is a regular Laravel application; it's build on top of Laravel and uses regular Blade / Tailwind CSS for the frontend, sprinkled with Alpine.js and Alpine AJAX for some interactivity. We stick to the Laravel conventions as much as possible.\n\nIn terms of local development, you can use the following requirements:\n\n- PHP 8.4 - with SQLite, GD, and other common extensions.\n- Node.js 16 or more recent.\n\nIf you have these requirements, you can start by cloning the repository and installing the dependencies:\n\n```bash\ngit clone https://github.com/djaiss/peopleos.git\n\ncd peopleos\n\ngit checkout -b feat/your-feature # or fix/your-fix\n```\n\n\u003e **Don't push directly to the `main` branch**. Instead, create a new branch and push it to your branch.\n\nNext, install the dependencies using [Composer](https://getcomposer.org) and [NPM](https://www.npmjs.com):\n\n```bash\ncomposer install\n\nnpm install\n```\n\nAfter that, set up your `.env` file:\n\n```bash\ncp .env.example .env\n\nphp artisan key:generate\n```\n\nPrepare your database and run the migrations:\n\n```bash\ntouch database/database.sqlite\n\nphp artisan migrate\n```\n\nLink the storage to the public folder:\n\n```bash\nphp artisan storage:link\n```\n\nIn a **separate terminal**, build the assets in watch mode:\n\n```bash\nnpm run dev\n```\n\nAlso in a **separate terminal**, run the queue worker:\n\n```bash\nphp artisan queue:work\n```\n\nFinally, start the development server:\n\n```bash\nphp artisan serve\n```\n\n\u003e Note: By default, emails are sent to the `log` driver. You can change this in the `.env` file to something like `mailtrap`.\n\n## Note for developers\n\nThis project uses the following languages:\n\n- PHP (always the most recent version),\n- CSS with Tailwind almost exclusively,\n- Blade for the templating language,\n- HTML, of course\n- Javascript with AlpineJS,\n- Ajax-like behaviour with Alpine Ajax,\n- PHPUnit.\n\nThese are simple languages, chosen on purpose. They lower the barriers to entry for newcomers who want to help on the project. They are very easy to debug. They are very easy to install on any machines. They are very light in terms of resources.\n\nWe believe this project is a nice project to learn how to code and to contribute to an open source project.\n\n### General guidelines\n\n- This project is meant to be simple to read, simple to maintain and simple to debug.\n- As a consequence, the code must be the simplest it can be. I can't put emphasis this point enough.\n- Use comments to explain what you are doing.\n- Write easy to understand code. Do not write lines of code that takes minutes to understand, like crazy loops and recursive stuff that make you appear smart, but waste everyone's time.\n- Yes, I'm not a great developer, but I'm also the one who will maintain this project on the long run. Please help me doing so.\n\n### Guidelines for development\n\n- All models and controllers should be fully tested. We use PHPUnit.\n- Avoid writing custom CSS as much as possible. Tailwind provides everything we need in 99.9999% of the case.\n- Do not add dependencies. Dependencies are the devil. It puts the project at risk in many ways.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjaiss%2Fpeopleos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjaiss%2Fpeopleos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjaiss%2Fpeopleos/lists"}