{"id":13722319,"url":"https://github.com/EmbersPlatform/embers","last_synced_at":"2025-05-07T15:30:39.799Z","repository":{"id":54385761,"uuid":"318045168","full_name":"EmbersPlatform/embers","owner":"EmbersPlatform","description":"A social platform built with Elixir and Phoenix Framework","archived":true,"fork":false,"pushed_at":"2021-06-27T22:41:12.000Z","size":5779,"stargazers_count":18,"open_issues_count":5,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-14T11:40:00.285Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://embers.gigalixirapp.com/","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EmbersPlatform.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"embers","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2020-12-03T01:57:02.000Z","updated_at":"2024-04-19T22:56:38.000Z","dependencies_parsed_at":"2022-08-13T14:10:13.509Z","dependency_job_id":null,"html_url":"https://github.com/EmbersPlatform/embers","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/EmbersPlatform%2Fembers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EmbersPlatform%2Fembers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EmbersPlatform%2Fembers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EmbersPlatform%2Fembers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EmbersPlatform","download_url":"https://codeload.github.com/EmbersPlatform/embers/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252905516,"owners_count":21822819,"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":[],"created_at":"2024-08-03T01:01:27.352Z","updated_at":"2025-05-07T15:30:34.790Z","avatar_url":"https://github.com/EmbersPlatform.png","language":"Elixir","funding_links":["https://ko-fi.com/embers"],"categories":["Elixir"],"sub_categories":["Phoenix"],"readme":"A social platform built with Elixir and Phoenix Framework\n\n![](docs/images/screenshot.png)\n\n\u003e **Warning**: the current frontend code is being refactored and it may break\n\u003e often. For instance, landing page is non-existent.Backend code requires\n\u003e refactoring, as many parts of it are messy/undocumented.\n\n\u003e This was previously a spanish-only project, some parts may need to be\n\u003e translated to english. Email-related stuff may be broken.\n\n## About\n\nEmbers is a microblogging platform alternative to mainstream social networks.\nYou can use it to follow friends and share anything you want: pictures, videos,\ntext and links.\nIt was born out of the idea of \"can I build something like Twitter\" and as a\nlearning exercise, so there weren't clear goals from the start. However, it is\nan opportunity to build spaces for small communities that feel out of place in\nthe more massive social networks.\n\n## Demo\n\nYou can find a running demo at http://embers.gigalixirapp.com/\n\n## Goals\n\n- Work in low-end devices.\n- Avoid tracking as much as possible.\n- Not rely on users personal data, like real names, location, etc. The less personal data we store, the better.\n\n## Features\n\n**Real-time timeline**\n\nSee what your friends post in real time in your home timeline.\n\n**Media attachments**\n\nUpload images and short webm/mp4 videos attached to your posts.\n\n**React to posts**\n\nInstead of just having a binary +1/-1 system, you can use one(or more!) of a\nset of predefined reactions, like love or sadness.\n\n**Save what you like**\n\nYou can add the posts you like to your personal favorites list and keep them\nfor later.\n\n**Tag your content**\n\nAdd tags to your posts, either via #hashtags or with a dedicated interface(to\navoid polluting images with hashtags).\n\n**Follow and block people and tags**\n\nYou can follow people to see their posts in your timeline, you can follow tags\ntoo. You can also block them to never see them again.\n\n**Content warnings**\n\nA tag based content warning allows you to filter Not Safe For Work content.\n\n**Moderation tools**\n\nYou can report posts that violate your Code of Conduct, moderators can remove\ninfringing content, ban users, and manually add content warnings.\n\n## Requirements\n\n- [Elixir](https://elixir-lang.org/) (and Erlang). Works fine with Elixir 1.11\n  and OTP 23.\n- [PostgreSQL](https://www.postgresql.org/)\n- [NodeJS](https://nodejs.org)\n- [Google Recaptcha](https://developers.google.com/recaptcha/) keys\n- [FFmpeg](https://ffmpeg.org/)\n- [ImageMagick](https://imagemagick.org/index.php)\n\nIf using docker-compose, only Google Recaptcha keys are needed.\n\n## Development with docker\n\nYou can use docker-compose to set up a development environment with docker by\nrunning `docker-compose`. After doing that, follow the steps listed in the\nGetting Started section.\n\n## Getting started\n\n### Backend\n\nBefore trying to compile Embers, a `config/ENV.secret.exs` file is needed. You\ncan find an example file for the `dev` environment in the `config` folder.\n\n- Get dependencies with `mix deps.get`\n- Copy static files with `cp -R assets/static priv`.\\*\n- Setup the database with `mix ecto.setup`. This will create the databse, run\n  migrations and seed data.\n- You can now run it with `mix phx.server` ot `iex -S mix phx.server`.\n\n\\* This step is needed because in order to inline svg files in templates,\n`phoenix_inline_svg` needs them to be in `priv/static`, but svg files are also\nloaded by the frontend code. This should be addressed in the future.\n\n### Frontend\n\nSource files for the frontend(js, scss, static files) live in the `/assets`\nfolder.\n\n- Install dependencies with `npm install` | `yarn`.\n- Build it with `npm run build` | `yarn build`, or `npm run dev` | `yarn dev` to\n  run in watch mode.\n\nAfter running these steps, the app should be accessible from\n[`localhost:4000`](http://localhost:4000).\n\nA default admin account is created with credentials `admin:yayapapaya`.\n\n## Building a release\n\nYou can build an OTP release for deployment by running the `release.sh` script.\nBuilt releases will be output to the `artifacts` folder.\n\n## Documentation\n\nDocumentation can be generated by running `mix docs`. After that, it will be\navailable in the `doc` folder.\n\n## License\n\nCopyright (C) 2020 dorgandash+embers@gmail.com\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FEmbersPlatform%2Fembers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FEmbersPlatform%2Fembers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FEmbersPlatform%2Fembers/lists"}