Skip to content

Latest commit

 

History

History
172 lines (134 loc) · 4.62 KB

README.md

File metadata and controls

172 lines (134 loc) · 4.62 KB

Logo

WorkGroup API

Self-Hosted Social Media for Companies
Learn more »

Report Bug · Request Feature

Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact

About The Project

WorkGroup is an open source, selfhosted social-media platform for companies.

Here's why:

  • Good networking is very important in companies.
  • Self hosted platforms are very important for companies with critical information.

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them.

Installation

  1. Clone the repo

    git clone https://github.com/BerkeAras/WorkGroup-API.git
  2. Install Composer packages

    composer install
  3. Generate APP Key

    php artisan key:generate
    php artisan jwt:generate
  4. Fill out .env

    APP_ENV=production
    APP_DEBUG=false
    APP_KEY=[YOUR APP KEY]
    APP_TIMEZONE=UTC
    APP_URL=[YOUR WORKGROUP APP URL]
    
    DB_CONNECTION=mysql
    DB_HOST=[YOUR DATABASE HOST]
    DB_PORT=[YOUR DATABASE PORT]
    DB_DATABASE=[YOUR DATABASE NAME]
    DB_USERNAME=[YOUR DATABASE USERNAME]
    DB_PASSWORD=[YOUR DATABASE PASSWORD]
    
    JWT_SECRET=[YOUR JWT SECRET]
    
    API_PREFIX=api
    
    MAIL_DRIVER=smtp
    MAIL_HOST=[YOUR SMTP SERVER]
    MAIL_PORT=[YOUR SMTP PORT]
    MAIL_USERNAME=[YOUR SMTP USERNAME]
    MAIL_PASSWORD=[YOUR SMTP PASSWORD]
    MAIL_ENCRYPTION=[YOUR SMTP ENCRYPTION]
    MAIL_FROM_ADDRESS=[YOUR OUTGOING EMAIL]
    MAIL_FROM_NAME="[YOUR OUTGOING NAME]"
    
    BROADCAST_DRIVER=log
    CACHE_DRIVER=file
    SESSION_DRIVER=file
    SESSION_LIFETIME=120
    QUEUE_DRIVER=sync
    MAX_UPLOAD_SIZE=5
  5. Create Database Schema

    php artisan migrate --seed
    
  6. Run API

    php -S localhost:8000 -t public
    

    or use run-server.bat (windows), run-server.sh (unix)

  7. Create following CronJobs:

    • Call URL: [API-URL]/api/jobs/onlineStatus (every 30-60 minutes)
    • if you run the API on shared hosting:
      • Execute Code: php artisan queue:work --timeout=60
    • if you can run processes:
      • Run Code: php artisan queue:listen

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Berke Aras - @brk_ars - [email protected]

Project Link: https://github.com/BerkeAras/WorkGroup