Coder Social home page Coder Social logo

saasify-sh / saasify Goto Github PK

View Code? Open in Web Editor NEW
1.2K 15.0 105.0 18.3 MB

The easiest way to monetize your API. πŸš€

Home Page: https://saasify.sh

License: MIT License

TypeScript 1.88% JavaScript 86.80% HTML 0.61% CSS 10.07% Shell 0.10% Mustache 0.55%
saas apis saas-api monetization oss funding passive-income serverless faas faas-platform

saasify's People

Contributors

bouiboui avatar chrisvxd avatar colinrtaylor avatar dependabot[bot] avatar hipstersmoothie avatar jamesgeorge007 avatar lqmanh avatar mmedum avatar netroy avatar ntcho avatar transitive-bullshit avatar zephraph avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

saasify's Issues

Fix Windows CLI support

Windows support for the saasify CLI seems to be broken.

C:\Code\budgify>saasify dev
parsing config saasify.json
parsing service index.ts
√ Preparing deployment
added 278 packages from 204 contributors and audited 2259 packages in 13.972s
found 0 vulnerabilities

now dev C:\Users\Dioge\AppData\Local\Temp\698c703a8d8382a604208c4df0ba0823
> Now CLI 16.5.2 dev (beta) β€” https://zeit.co/feedback/dev
- Installing builders: @now/[email protected]
> Error! Command failed with exit code 1: C:\Program Files\nodejs\node.exe C:\Users\Dioge\AppData\Local\co.zeit.now\Cache\dev\builders\yarn add --exact --no-lockfile --non-interactive @now/[email protected]

Similar with deployments:

C:\Code\budgify>saasify deploy
parsing config saasify.json
parsing service index.ts
Γ— Creating deployment
Request failed with status code 400
Error building deployment

> NOTE: This is the first deployment in the joshuakgoldberg-budgify project. It will be promoted to production.
> NOTE: To deploy to production in the future, run `now --prod`.
- Queued...
- Building...
> Error! Build failed
> Error! Check your logs at https://joshuakgoldberg-budgify-h6k4adk6o.now.sh/_logs or run `now logs https://joshuakgoldberg-budgify-h6k4adk6o.now.sh`

cc @JoshuaKGoldberg

saasify.sh is not working (Secure Connection Failed)

In Firefox:

Secure Connection Failed

An error occurred during a connection to saasify.xyz. Peer reports it experienced an internal error. Error code: SSL_ERROR_INTERNAL_ERROR_ALERT

In Chrome:

This site can’t provide a secure connection
saasify.xyz sent an invalid response.
ERR_SSL_PROTOCOL_ERROR

Build API on Saasify and Contribute to it

I really love the Saasify platform and would really love to build on it. I have a couple of APIs built on Python and Node, and would love to put it on Saasify.

The slack channel link is longer active, can I get a new link?

Also I would really love to contribute to Saasify and make it better.

Custom headers in proxied requests

Hello,

I would like to ask if it is possible to customize headers which are sent by the proxy to the backend. In the docs I found that it is possible to add new headers to responses, but I would like to know if it is, or it will, be possible to add new headers to proxied requests.

I would like this feature to be able to handle an authentication scenario where I would prefer not to update an existing web service so that it understands Saasify specific authentication headers. Instead, I would like to set an API Key, via a custom X-Api-Key header, which is sent with every request and it is already understood by the existing service.

Thanks,
Goodbye,
Alessio

Privacy add-on blocking API docs from loading

Page: https://puppet-master.sh/docs

I'm running a few privacy addons and one of them blocked the API by default. Issues with the page are to be expected but I didn't expect the whole page to crash like this.

In production maybe this should default to a nicer more end user friendly version.

Error downloading https://api.saasify.sh/1/deployments/openapi/transitive-bullshit/puppet-master@a818aeac Failed to fetch
Stack trace
Error: Error downloading https://api.saasify.sh/1/deployments/openapi/transitive-bullshit/puppet-master@a818aeac 
Failed to fetch
    at https://puppet-master.sh/static/js/3.cc3278d9.chunk.js:1:23110
    at https://puppet-master.sh/static/js/3.cc3278d9.chunk.js:1:922267

TypeError: Failed to fetch

ReDoc Version: 2.0.0-rc.14
Commit: 121bf64

Saasify Python Support

Trying to write a simple saasify python project and test locally but i keep getting this error if I open the localhost url on browser:

Command failed: pip3 install --disable-pip-version-check --target . --upgrade werkzeug
Traceback (most recent call last):
  File "/usr/bin/pip3", line 9, in <module>
    from pip import main
ImportError: cannot import name 'main'

I think the issue is from now-python trying to installing something here: https://github.com/zeit/now/blob/canary/packages/now-python/src/index.ts#L28

Any fix to this. Also there should be a documentation on how to set it up with Python, virtualenv and so on.

Monitoring Users

Hi, this is a nice project, I would like to know where would I access the admin features and analytics as a developer of the API.

I would like to keep track of the people who signed up for my API

serve throws error if entry point not at project root

fin serve throws the following error when the src is not at the project root:

Cannot find module /private/var/folders/km/wffqdw217d35_b7386wmz9ym0000gn/T/0eaccfd7ca53ec93f4edfcb6a78a7ae0/index.js

fin.json

{
  "version": 1,
  "name": "story2sketch",
  "services": [
    {
      "src": "serverless/index.ts",
      "name": "story2sketch"
    }
  ]
}

Inspecting the tmp dir, I see:

wffqdw217d35_b7386wmz9ym0000gn/T/0eaccfd7ca53ec93f4edfcb6a78a7ae0
➜ ll
total 0
drwxr-xr-x  3 chrisvilla  staff    96B 10 May 16:07 serverless
drwxr-xr-x  3 chrisvilla  staff    96B 10 May 16:07 src

Looks like fin is missing out the serverless part of the path, since that contains index.js as expected.

User validation failed: email: Path `email` is required.

When I type saasify signup, and authenticate with Github, I get this message:

image

but the CLI displays:

$ saasify signup
- Authenticating with GitHub
Γ— Authenticating with GitHub
Request failed with status code 400
User validation failed: email: Path `email` is required.

And then when I init a new project:

? Template? typescript
? Project Name (saasify-test)
? Project Name saasify-test
? Project Description (Powered by Saasify)
? Project Description Powered by Saasify
? Author's GitHub Handle (bouiboui)
? Author's GitHub Handle bouiboui
? GitHub Repo Path (bouiboui/saasify-test)
? GitHub Repo Path bouiboui/saasify-test
? License (MIT)
? License MIT
- Cloning "typescript" template
√ Cloning "typescript" template
- Copying "typescript" template to C:\Users\Julien\AppData\Local\Temp\saasify-test
√ Copying "typescript" template to C:\Users\Julien\AppData\Local\Temp\saasify-test
- Initializing git repo
Γ— Initializing git repo
Command failed with exit code 1 (Unknown system error -1): git commit -m init typescript template ([email protected])

The created folder is empty, so Git fails.

Add TODOs Badge to README

Hi there! I wanted to propose adding the following badge to the README to indicate how many TODO comments are in this codebase:

TODOs

The badge links to tickgit.com which is a free service that indexes and displays TODO comments in public github repos. It can help surface latent work and be a way for contributors to find areas of code to improve, that might not be otherwise documented.

The markdown is:

[![TODOs](https://badgen.net/https/api.tickgit.com/badgen/github.com/saasify-sh/saasify)](https://www.tickgit.com/browse?repo=github.com/saasify-sh/saasify)

Thanks for considering, feel free to close this issue if it's not appropriate or you prefer not to!

(full disclosure, I am the creator/maintainer of tickgit)

Deployment issues

Hi,
I'm having some issues when trying to deploy my project using OpenAPI.

  • Whenever I use saasify dev, there is this error: Unsupported service type "undefined".
  • If I use saasify deploy, it requires backendUrl or SAASIFY_BACKEND_URL. However, when I add that field, this error pops up:
    Request failed with status code 400
    OpenAPI error: Error opening file "/opt/render/project/src/api/dist/openapi.json"
    ENOENT: no such file or directory, open '/opt/render/project/src/api/dist/openapi.json'

Here is my saasify.json:

{
  ...
  "openapi": "./dist/openapi.json",
  "backendUrl": "https://httpbin.org",
  "services": [
    {
      "path": "/scraper",
      "httpMethod": "POST",
      "examples": [...]
    }
  ]
}

I use Nestjs with @nestjs/swagger to generate that openapi.json file

Support for object binding patterns (object) arguments?

This works:

export default async (language: string): Promise<string> => {
    return "";
};

...but this doesn't:

type MySettings = { language: string; };
export default async ({ language }: MySettings): Promise<string> => {
    return "";
};
$ saasify dev
parsing config saasify.json
parsing service index.ts
Not implemented feature for syntax kind 'ObjectBindingPattern'.

For what it's worth, ObjectBindingPattern refers to capturing variables in an argument. AST Explorer link

status code 413: request entity too large

Repro:

$ /Users/amaury/Workspace/reacher/webapp/node_modules/.bin/saasify deploy
parsing config saasify.json
βœ– Creating deployment
Request failed with status code 413
request entity too large
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

The same saasify.json passed last week.

Version:

$ /Users/amaury/Workspace/reacher/webapp/node_modules/.bin/saasify -V
1.20.8

Error when deploying walkthrough: Project name could not be inferred

Following the steps in the Walkthrough, I hit this bug when running fin deploy:

/Users/chrisvilla/.nvm/versions/node/v9.11.2/lib/node_modules/fin/node_modules/conf/index.js:56
				throw new Error('Project name could not be inferred. Please specify the `projectName` option.');
				^
Error: Project name could not be inferred. Please specify the `projectName` option.
    at new Conf (/Users/chrisvilla/.nvm/versions/node/v9.11.2/lib/node_modules/fin/node_modules/conf/index.js:56:11)
    at Object.<anonymous> (/Users/chrisvilla/.nvm/versions/node/v9.11.2/lib/node_modules/fin/lib/auth.js:4:14)
    at Module._compile (internal/modules/cjs/loader.js:654:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10)
    at Module.load (internal/modules/cjs/loader.js:566:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
    at Function.Module._load (internal/modules/cjs/loader.js:498:3)
    at Module.require (internal/modules/cjs/loader.js:598:17)
    at require (internal/modules/cjs/helpers.js:11:18)
    at Object.<anonymous> (/Users/chrisvilla/.nvm/versions/node/v9.11.2/lib/node_modules/fin/lib/cli.js:8:14)```

Docs should mention required .gitignore

The deployment process relies on .gitignore to establish what data to send to Fin's servers. This should be documented somewhere, perhaps in the Walkthrough, but also in any larger piece that documents how Fin handles deployments.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.