@anarock/api-typings v2.5.0
This projects helps in managing TypeScript typings and dummy API endpoints with all the possible outcomes.
Usage of typings
yarn add @anarock/api-typings@https://github.com/anarock/anarock.api-typings#1.1.1Then in your code import required typings
import axios from "axios";
import { Countries } from "@anarock/api-typings/typings/meta-api-v0-countries";
function fetchCountries() {
return axios<Countries>({
url: `${META_SERVICE}api/v0/countries`
});
}Usage of Server
You can run the mock server after installing it as dep using
yarn anarock-mock-serveTo change the port, install cross-env and then
cross-env MOCK_SERVER_PORT=3001 anarock-mock-serveDevelopment.
- Make sure you have node installed on your system.
- Install yarn
npm i -g yarn - clone the repo
- Go into the repo and run yarn.
Then
yarn serveto serve dummy APIs.yarn buildto generate typings.
Writing Schema
Follow the structure: [serviceName]/api/v0/metadata.json.
Write your schema in the corresponding JSON file. I will write more about how to write a schema later. For now, you can see the two API examples. This supports JSON Schema draft 4 so make sure you use that. Even though you will find draft-07 written everywhere, the features used are of draft-04.
Dummy API
yarn serveThe server will run at http://localhost:3000
In the endpoint all the / are replaced by _.
Just go to http://localhost:3000 and you will find all the URLs there.
Typings
Just like the dummy data, typings are generated automatically when you run yarn build.
Don't touch the following files as they are generated files.
- db.json
- typings/*
- routes.json