Framework for building Simple and eXtensible API
100K+
sxapi for simple and extensible api (Application Programming Interface) is an an open-source framework for quickly building simple and small API based on microservice architecture.
Very light (application less than 100Ko, full container stack for less than 30Mo) and configured with a single json file, you can build instantly small atomic API endpoints as well as fully featured enterprise-sized API.
For more information on how to run your first sxapi application using sxapi docker image, please read the docker image user guide
If you want to use this project as a npm module in your nodejs source code you can read the npm module user guide
If you plan to extend sxapi-core, please read the source code user guide
Theses command are for a Red Hat Linux like environement (Fedora, CentOS, RHEL, Suse). Please adapt yum command to the apt-get equivalent if you are using a Debian like system (Ubuntu, Debian)
sudo yum install -y docker
sudo service docker start
For more information on how to install and execute a docker runtime, please see the official docker installation guide
After installation, pay attention to your user authorisation. Your current user must interact with the docker daemon.
To run you test in a sandbox, you should isolate your sxapi test from your current work by creating a working directory.
mkdir ~/test-sxapi
cd ~/test-sxapi
Use docker command to get sxapi container image from the docker hub registry. This will update your local docker image cache.
docker pull startx/sxapi:latest
Create a file named sxapi.json
vi ~/test-sxapi/sxapi.json
Edit it with the following content
{
"name": "sample-api",
"description": "my sample api using sxapi-core framework",
"version": "0.0.0",
"debug": true,
"log": {
"filters": {
"level": "0,1,2,3,4",
"type": "debug,info,error,warn"
}
},
"server": {
"endpoints": [
{
"path": "/",
"body": "<html><head></head><body><h1>My sample API</h1></body></html>"
}
]
}
}
You can change name, description, version and server.endpoints.body with personalized content
docker run -d -p 8080:8080 -v ~/test-sxapi/sxapi.json:/conf/sxapi.json:ro startx/sxapi
Connect to http://localhost:8080/ with your favorite navigator. You should
see an html message "My Sample API".
sxapi-core come with many components to help you build your own api. As soon as you have an api instance working, you should focus on making change to your sxapi.json config file and implement api endpoints you want to create.
To help you understand how you can configure your api, you can :
If you want to have more information on how to install, develop and run this framework and use it in your project, please read the full documentation or our user guides and execute the following steps :
If you run into difficulties installing or running sxapi, you can create an issue.
Read the contributing guide for details on our code of conduct, and the process for submitting pull requests to us.
This project is mainly developped by the startx dev team. You can see the complete list of contributors who participated in this project by reading CONTRIBUTORS.md.
This project is licensed under the GPL Version 3 - see the LICENSE.md file for details
Content type
-
Digest
Size
-
Last updated
almost 5 years ago
docker pull startx/sxapi