raathigesh / atmo Goto Github PK
View Code? Open in Web Editor NEW:heavy_check_mark: Mock data for your prototypes and demos. Remote deployments to Zeit now.
:heavy_check_mark: Mock data for your prototypes and demos. Remote deployments to Zeit now.
Hello,
lets say i have a URL api/users/$userId/invoices/$invoiceId
how can i implment this in the URL and in the response type set to javascript, get the specific URL endpoints dynamic variables, to my coding and send back a dynamic response?
thanks!.
Do you have a plan to option to create schema and auto generate sample data base on user-define schema?
Is there a way to change the port of Atmo mission control? i think it is a necessary thing for the users.
@Raathigesh
Hi,
I've a scenario which needs a mutual SSL authentication to validate the response.
Is there any way we can implement this in Atmo ?
Its a simple start http://localhost:3333
in batch
It would be great to support all HTTP Response Codes, I could add it using https://developer.mozilla.org/en/docs/Web/HTTP/Response_codes as reference :)
Hi,
I noticed writing javascript code in the response of http endpoint when generating project and running the project, there is an error.
i think the part of taking the javascript code and attaching it to the generated project "server.js" file is not working.
:(
test mutations?.
Many thanks
Currently GET and Post is supported. Support others as well.
Should be able to generate a Node JS project from the UI. Project would be zipped and stored in the location where the command was executed.
hi! love the project!
small suggestion, maybe for each request can we set a delay, to test client side loaders and such.
so for each request you can have "ms" delays, should be a super cool addon.
Thanks!
Atmo is not huge success but with 400+ stars, I think its good enough to consider a total revamp and make it even more powerful which would hopefully make even more people to use it. So here is my plan for the next version of Atmo (Atmo Next).
These are some things to expect with Atmo Next as a user of Atmo
I went with a CLI based approach because it's easier to distribute through npm and I don't have to worry about building for different platforms. But unfortunately electron would add that overhead. But I think it's worth the effort considering the experience it would provide. So Atmo next would be an electron app.
When i started developing Atmo, I got way too excited and added support for bunch of things such as Socket and GraphQL. There are way better tools for GraphQL for example Apollo Launch Pad and GraphCool. So Atmo next would not have GraphQL support and Socket support. Atmo next is going to be REST API focused.
Atmo's UI is something I'm really proud of. I'm not a CSS guy. But with the help of Semantic UI I was able to put to together the current UI with extremely short amount of time. But current UI got issues such as not able to re-order the created endpoints in the side bar. This is going to change. Atmo next would be experience focused
There were few requests to support authentication in Atmo but I never got time to implement it so far. I would take this opportunity to add authentication support and other features like response delay to simulate long running tasks.
When you write a mock API, at some point you would like to deploy it to cloud so you could share with someone else. Atmo Next would integrate with Zeit's now to make deployment seamless.
If you decide to ditch Atmo for whatever reason, you should not be needing to start all over again from scratch. Code generation would help to generate a Node JS project of your current Atmo project so you could customise as you want from the moment you decided to move away from Atmo.
A website would really help to increase the adaptation of the tool. So, let's build a cool, minimal website.
I would also like to leverage this re-write to look into some new technologies and build Atmo on top of them.
It's an electron app, so yea!
It's just productive!
Atmo uses Mobx for state management. It was fun using Mobx but I definitely miss Redux. Recently I came across this article which proposes an interesting pattern. Atmo next would still stick with Mobx but would love to experiment with some patterns that are being proposed. it looks bit too early for mobx-state-tree.
Because it looks great.
This is probably what I'm mostly concerned about. Semantic UI is an awesome framework if you don't want to spend hours building the UI and there is now Semantic UI React as well. But I want to give Ant Design a chance because it looks promising and the number of components are much more and versatile.
After a day of prototyping with Ant Design, I don't really like how the Ant Design components look out of the box. So decided to go ahead with Blueprint JS.
Apparently, I did not realize how easy and productive it is to work with Semantic UI. After trying the above alternatives, I returned to using Semantic UI React.
It doesn't matter what awesome features or technologies Atmo next has if there is no body to use it. So let me know what you think and what are your pain points with Atmo. Would be happy to address them.
Pick a free port and use for the API server
Could you make a video on how this is used?
When I create new JSON Server Endpoint I can't change '/api' to '/myttt'. Is there a way to change this?
When creating a new http endpoint, the default "Response Headers" first row is "Access-Control-Allow-Origin: *" which is great it allows us CORS.
but if i click on it to edit it a new headers row is added under it.
If i don't add new header and leave the new row fields empty, clicking "Deploy" and "Save" , closing and reloading atmo causes the endpoint to return "404" error.
in my case the endpoint was a "200 OK" and "POST"
Thanks.
The star button on the dashboard, is a bit distracting. Especially since it doesn't match the current star count. Mine still at 30, perhaps it should match the current star and say "unstar" if I already starred it. Or just remove it.
Hello,
As i work with Atmo, i really like it!
as a follow up to #41 issue since making use of it as a mock in a version control enviroment, it can be amazing that in the build process (i use webpack) to add to the NPM script another script that generate the project same as the "Generate Project" button on atmo via command line to the "dist/" folder so i can ship it as a mock server instead of creating my own (thats the point of generate project anyway).
So i am suggesting that running "atmo --cacheFilePath mockups/db.json --generateProject dist/server" can be an excellent addon.
Thanks!
Refactor with the suggestions from #26
Status indication of whether the API server is running successfully or encountered any errors
Should be able to see logs of the API server to get an idea of the status.
Logs such as
Add support to easily proxy other HTTP services.
User should be able to specify a static resource folder so static resources could be served if required.
type Author {
id: Int! # the ! means that every author object must have an id
firstName: String
lastName: String
posts: [Post] # the list of Posts by this author
}
type Post {
id: Int!
tags: [String]
title: String
text: String
author: Author
}
type RootQuery {
author(firstName: String, lastName: String): Author
fortuneCookie: String
}
schema {
query: RootQuery
}
when loading atmo frontend (via global command) it loads the file ../../cache.spec.json
whenever we add/delete entrypoint in the frontend the changes are being "globaly" saved to that file.
When working on a project i don't want my team to do import/export on every change in the version control (i.e using the export/import buttons in the atmo frontend)
I prefer to click the save
button and continue as is.
There for the solution i offer is that when calling atmo
in the command line add the parameter cacheFilePath
to load the specific cache spec file.
example atmo --logs --cacheFilePath mockups/db.json
to do this inspecting the server.js code in atmo/src/server/server.js
there is a variable called cacehFilePath
which loads the global entrypoints file ../../cache.spec.json
.
a quick dirty way to change that line to:
var cacheFilePath = ( argv.cacheFilePath ? argv.cacheFilePath : null ) || path.join(__dirname, '../../cache/spec.json');
will make that when running atmo the default loaded file will be then one i specified (which is good for version controlled file) also add/delete entrypoints currently saving it to that specific file just works as expacted.
I would have create a PR but i am behind a firewall and will able to do in only in few days( sorry!)
Also the change i offered is a very dirty solution, it should be placed and checked in a better place in the server.js
code.
Thanks.
My Setup -
Machine A - Atmo Server (Client & Server)
Machine B - Laptop machine from where I am defining a JSON prototype and deploying to Machine A
When I try to create and deploy a new prototype from my machine to the Atmo server (Machine A), I see a message 'Deploying...' but nothing happens. The JSON prototype is not getting deployed. Do I need to make any additional configs?
It would be great to have Gitter channel for Atmo project.
After I type npm install -g atmo and then run atmo from terminal, I got this error.
env: node\r: No such file or directory
First I thought it's because my npm folder is not correct, however when I rollback to use atmo version 0.14.0, it worked. My friend also found this problem with 0.14.1
UI should always retain the current working project between session.
Options requests is not handled properly so could not properly make CORS requests from the browser.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.