Skip to content

The best open source AI assisted API development tool. Made by the developers. For the developers.

License

Notifications You must be signed in to change notification settings

Oferlis/sharkio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

logo

Sharkio

🐳 What is Sharkio

Sharkio is a development tool for api developers. It is a proxy that records all the requests that are sent to your servers. And provides you with a dashboard to analyze all the traffic. Sharkio also provides the ability to repeat requests. Generate types for youre favorite language based on real data.

Help us help you!

πŸ—ΊοΈ Roadmap

In the roadmap sharkio will support team functions. Also Sharkio will integrate with ChatGPT in order to allow easy use of api. Request automation. Api inconsistency alerting. Integration to Postman. Automatic CLI generation for your api with real data. Request mocking.

πŸ”– Features

Feature Name Available
Inspect traffic βœ…
Search βœ…
Filter βœ…
Repeat request βœ…
Typescript generator βœ…
JSON schema generator βœ…
Microservice support βœ…
Request mocks βœ…
Open api generator βœ…
Save requests βœ…
Collections βœ…
ChatGPT integration
Share requests

πŸ› οΈ How to use

  • npm install -g @idodav/sharkio@latest
  • sharkio dashboard start
  • sharkio admin start
  • sharkio admin sniffers create --port 5100 --downstreamUrl http://localhost:3000

πŸš€ Getting started

Running in development

  • npm i -g concurrently ts-node

For the backend

  • cd into traffic-sniffer.
  • npm install
  • npm run dev

For the frontend

  • cd into traffic-dashboard.
  • npm install
  • npm run dev

For both:

  • npm run dev ( in root directory )

Note:

Running in production - using Docker

Run whole project:

  • in root of project, use:
  • docker-compose up
  • NOTE: use ports 5550-5560 as proxies, make sure they are available.

Run backend/frontend only:

  • cd to relevent folder
  • build the Docker image: npm run docker:build
  • run the app: npm run docker:run

❓ Setup FAQs:

[1] Pre-commit hook is not installed during normal installation, what should I do? To setup husky [pre-commit hook] manually by running this command: `npm run prepare`
[2] What does `traffic-dashboard` and `traffic-snifer` directory contain? `traffic-dashboard` is the frontend code || `traffic-snifer` is the backend code

πŸ—οΈ Architecture

image

πŸ“Έ / πŸŽ₯ Screenshots

Visual Demonstration: How to run the application?

Preview How To Use GIF
Preview UI interface Screenshot 2023-06-21 at 20 01 38 Screenshot 2023-06-26 at 12 32 47

⚑ Social links

πŸ‘©πŸ»β€πŸ’» Want to contribute?

  • Fork the repo, clone it to your local environment and start exploring the code.
  • Look for an issue, preferably from the next milestone list.
  • Ask to be assigned to the issue.
  • Got stuck? need an advice? find us in the Discord server.
  • Found a bug? πŸ› please open an issue.

🀝 Acknowledgement

πŸ† Contributors

Appreciating all our fellow contributors:

About

The best open source AI assisted API development tool. Made by the developers. For the developers.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published