v1.0 has just landed, learn what's new!

Secure Open-Source Backend Server for Web & Mobile Developers

Swyger is a self-hosted backend-as-a-service platform that provides developers with all the core APIs required to build any application.

GitHub
swyger.agglomy.com
Product Photo Product Photo
Intro devices Intro devices

Sign Up Now for Free Cloud Credits

Deploying Swyger has never been easier. Secure your free credits for Swyger Cloud now by signing up.

Learn more about Swyger Cloud

Power, Security and Flexibility

Take advantage of the Swyger services to speed up your development on any platform

Database

Store, query and manage access control to your app documents

Auth & Users

Authenticate, confirm and manage users using multiple signin methods

Storage

Upload, download and preview your app and users files

Functions

Run your backend code in a secure and isolated environment to customize your app

GEO & Localization

Detect your users location, locale and fetch GEO related data

Console

Track your backend API usage and manage your project resources from a modern UI

Privacy

Own your data. Easily setup Swyger self-hosted solution on your infrastructure

Security

End-to-end security for your backend APIs both in transit and at rest

Quick to Get Started, Easy to Grow

All Swyger SDKs are carefully designed to make developers lives easier:

  1. Simplicity first attitude
  2. Zero dependencies
  3. Verbose documentation
  4. Consistency across platforms
  5. Plays well with others
Grab the Swyger Web SDK:
npm install @swyger/client
Configure your SDK and start sending calls:

//You can download the swyger database client js library on: https://www.unpkg.com/@swyger/client
import SwygerClient from './dist/swyger-client.min.js'
//import SwygerStorageClient from '@swyger/client' //with npm for node module
let config={
            //Configure the offline DB
            OFFLINE_DB_NAME:{
                AUTH:'swyger_auth',
                DATABASE:'swyger_database',
                STORAGE:'swyger_storage'
            },

            //Configure the server
            HOST_SERVER:{
                AUTH:'http://localhost:4100',
                DATABASE:'http://localhost:4400',
                STORAGE:'http://localhost:4500',
                MAIL:'http://localhost:4200',
            },
            API_VERSION:{
                AUTH:'/api/v1',
                DATABASE:'/api/v1',
                STORAGE:'/api/v1',
                MAIL:'/api/v1',
            },
            AUTO_REFRESH_TOKEN_TIMEOUT:1500000, //in millisecond= 25 minutes
            // A Unique Api key for all your servers
            API_KEY:your_api_key
        }
                        // Init your Web SDK
let client =SwygerClient.init(config)
        //now you can do authentication
        let auth= client?.auth?.auth()
        auth.register({email,password},callback)
        //...

        //CRUD with database realtime
        let ref=client?.database?.database().ref('/your/path/reference') //like firebase
        //ref.create({object},callback)
        //OR listener
        //ref.onValue(callback)
        //...

        //CRUD with File in realtime
        let storageConfig={ //Discord/AWS/Google....
            token:'discord-bot-token',
            channelId:'discord-channel-id'
        }
        let location='local' //discord/aws/google
        let storageRef=client?.storage?.storage(location,storageConfig).ref('/your/parent/ref')
        //storageRef.upload({object},callback)
        //...

Join Our Growing Developer Community



+22,200 Stars

+2,500 Forks

+4,600 Pull Requests

+10,800 Commits


Integrate with Your Favorite Technologies

Cross-platform and language agnostic. Designed to work well from your frontend or backend.




Stay up to Date with All the Latest News and Announcements