26
50 Comments

Is there a SaaS template?

A good framework that includes the following components out of the box will help reduce the go to market time for many ideas:

  • Sign up and login
  • Create and manage subscription plans
  • Stripe Integration
  • Account and Profile management
  • Theme change
  • Website management i.e. Title , page creation etc.

Sort of like many popular CMS systems but geared towards SaaS market. Any takers?

  1. 13

    Bullet Train sounds like a good fit here.

    1. 4

      I'll second Bullet Train. 👍

    2. 4

      Damn so this is the Ruby equivalent Spark/Laravel! Im not a php but fan but I've been looking for an excuse to try out RoR for a while now! Definitely want to have a play with this.

      1. 3

        That's an interesting niche that I wasn't aware about. I wonder if a Node.js version with a combo like Typescript + Graphql + React SSR would spark any attention.

        1. 3

          It would definetly spark attention on my side

    3. 3

      Wow spark for PHP
      Bullet train for RoR

      Looks like we are only missing something equivalent in python.

      1. 4

        And Node.js :)

        1. 2

          I'm developing a product like this for Node.js. I just have to finish the docs and marketing site.

          1. 1

            Is there any place that we could follow the progress?

            1. 1

              I'm generally not a big fan of subscription lists myself, but I'll use this one for big milestones: https://www.producthunt.com/upcoming/appjumpstart

              1. 1

                I'll follow closely because I'm thinking about writing an template like this for myself :)

      2. 3

        For the Python/Django stack there is SaaS Pegasus.

        Full disclosure: I'm the creator of it. :)

      3. 1

        Python runs even slower than Ruby and doesn't have anything as productive as Rails (though Django does look to Rails for inspiration here and there). Honestly, you'd be better off with one of the two options you listed above.

        1. 3

          When it comes to web applications very seldom will the speed of the language itself be the deciding factor in the speed of the application as a whole. Contrived language benchmarks running random algorithms have little relevance. I would strongly advise that nobody make decisions based on such silly things and instead find the tools that are the most productive for your task.

          I've used Django in various capacities for a decade or more, and it is an extremely productive and flexible framework. From my experience its generally the case that the more opinionated the tool is, the more productive it is. Its just a question of whether your tasks benefit from that opinionated nature.

          Flask is a micro framework and the polar opposite of Django. Its better suited for small projects or for more experienced developers.

          1. 2

            Web applications often do change tech stacks due to performance issues and scalability costs. In fact, I would say that it's extremely common with Python or Ruby based stacks, and two of my former employers made just such a shift. I could name dozens of other startups where I considered working that did the same. Node, Elixir and Go are all common options.

            From my experience its generally the case that the more opinionated the tool is, the more productive it is. Its just a question of whether your tasks benefit from that opinionated nature.

            I don't want to get too far into the weeds here, but Django is significantly less opinionated (and productive) than Rails is and that's probably why Rails got such a huge lead in market share despite Ruby being a more niche language.

            Just off the top of my head, when you create a controller, in Rails, you don’t need to define any variables or import classes – it’s all done by the framework. In Django, view variables need to be passed explicitly from the controller and the template file to be used needs to be set as well since there is no default naming convention. Similarly the Rails routing DSL is extremely abstracted and powerful, but in Django you'll be writing regular expressions. When writing fixtures in Rails, the model will be inferred from the file name and less code needs to be written, but in Django you have to specify everything. The testing DSL in Rails is also more powerful, etc, etc, etc. Throughout nearly every level, Rails is laser-focused on solo and small team developer productivity.

            I have no doubts whatsoever that you are extremely productive with your decade of Django experience, but it's just not true that Django has the same level of RAD focus Rails does. Neither does Node+Express (or Go), but at least in that case you're getting a huge improvement in performance in exchange for what you give up in productivity.

        2. 0

          This is a silly point. If it were true you would be better off writing the program in C/rust rather than any listed here.

          Furthermore, there is a lower bound limit to how fast a request can be processed. You are limited by the network I/O, so any language to include C will always run up against that.

          1. 0

            The point is that Python (Django or Flask) will be both slower to develop and less performant than Rails or Laravel (or Phoenix for that matter).

            Writing the web server in C would take forever and a week to develop but be very performant if you had the time and skill to pull it off. Python really is the worst of both worlds for webdev, though it has great wrappers for C/C++ ML libs.

    4. 3

      I tried this product pretty long time ago. Either It's not what I thought or the demo was poor - I didn't understand nothing.

      1. 5

        Hey, thanks for that feedback. It's really helpful! If you found the self-serve demo confusing or unclear, please don't hesitate to schedule a call with me and I'll be happy to give you a personal tour of the codebase and answer any questions you have.

        1. 6

          You are the conductor on Bullet Train?

          1. 4

            Haha. 😂 Yes, I suppose I am, although you're the first one to call me that.

        2. 3

          Do you have any publicly available videos that kind of show off a bit of whats going on or some tutorials? I had a play around with the live demo and it seemed pretty neat...though team invitation didn't work for me :/ My big thing with these types of things is figuring out "what choices have I been locked into that I won't easily be able to get out of?" because I'm weighing up my requirements, so I know roughly what I need but not if something in my requirements just won't be easy to support with something like this?

          I've got a project my wife wants me to do and I'm heavily debating whether to just bite the bullet and learn Rails as it looks incredibly productive and BulletTrain puts you right at the point you can just hit the ground running...

          1. 2

            Yeah, historically this sort of functionality has been distributed in Rails gems (Devise, Koudoku [which I developed], etc.) and it's been really painful when you run into last mile issues and end up having to fork a library to modify it to work the way you want it to. Pete Keen, another engine developer, spoke about this recently on Twitter.

            We sidestepped that specific ugliness with Bullet Train by shipping it as an fully-fleshed out application template and all of the magic we bring to the table isn't tucked away in a library somewhere (aside from already-standard Ruby Gems like Devise, Koudoku, etc.) Instead, all of our code is just in your app, tucked away in a namespace, but fully editable in your project if that's what you want to do. (Updates are managed via git pull bullet-train master.)

            As a result, there's very little "lock in," and the only real tradeoff is some light "technical debt" if you even want to call that. For example, if you customize our stuff, you'll probably run into a merge conflict down the road when we update the same functionality, but it's not a big deal, just fix it like you would on any project where you've got multiple developers working on the same stuff.

            I'll look into the invitation issue on the demo site. Thanks for the heads up!

            1. 1

              Yeah, that's what I'm terrified of. That tweet has a pretty good example with Devise having over 4000 forks because people can't get it to do everything it needs to do. With Spring Security I can get it to do anything... but the cost to learn it and implement it is quite high for a complex implementation.

              Working in Java/Spring there's absolutely nothing I can't do. Never ever get stuck, but lately more and more I get the feeling that If I'm developing an application with 300+ screens, complex business logic and complex validations its an excellent choice and not so much when it's just a prototype I want to whip up to test the waters. Reading the rails tutorial book got me quite excited because it looks really fast! Then reading that tweet makes me think...hmm maybe it's too good to be true? I guess like everything its a trade-off... though compressing time and shipping quickly is fast becoming the most attractive option.

    5. 2

      I also used Bullet Train and it's awesome. Definitely recommend!

  2. 3

    Pup, by Clever Beagle is an open source meteor.js / react project which I have worked on (I'm not the author).

    It's aimed at people who want to build a product and are at the beginning end of their software development journey.

    It has all the 'boring' stuff implemented already (sign-in, emails, security, etc) so that the founder can get straight to coding their business logic.

    There is a 'Stripe integration' module, which includes payments and creating/managing subscription. It's in the later stages of development but I'm not sure what the release date will be for it.

  3. 2

    SaaS Pegasus is an option for the Python/Django stack.

  4. 2

    Although it's not really a traditional framework, the Hackathon Starter seems to be a pretty good jumping off point for SaaS. It's pretty modularized, so you can customize it to your needs.

    https://github.com/sahat/hackathon-starter

  5. 2

    I'm working on a SaaS template like you described, built for the React/Redux world, with Firebase as the backend. I've had great luck with that combo with MastermindJam.

  6. 2

    Closest thing to a SaaS template seems to be spark/laravel from everything I've seen. Too bad I'm just not a fan of php or I'd probably use it.

    1. 1

      Totally agree ... I would love to pay a 100 bucks for a python version of that.

      1. 4

        Always wondered if there was a gap for a node/express equivalent. That's my goto stack

        1. 2

          Same here, so I decided to build a product like this for Node.js (and Express). I'm hoping to launch this summer.

  7. 1

    Another new one to join the bandwagon of low code: https://honeycode.aws.com (AWS Honeycode)

    But not sure if it is geared towards SAAS

  8. 1

    Pinax Project on Django is quite good to start - http://pinaxproject.com/

    It's not a full plug and play project, but it's really a good start to get signup, account management, team with memberships, audit - event logs, etc. There is also a Stripe extension, but seems a bit outdated.

    The project can be used as backend code, or with pinax-templates which is based Bootstrap and provide basic UI for the major extensions (signup, account, team).

    1. 1

      Did you get the standard or enterprise? It looks interesting. I tried the demo, but it doesn't actually let you build I believe.

      I also just realized this comment was from 3 months ago. Were you able to build anything or have an example of something you were able to build so far?

      1. 1

        I built and launched www.oneonemeeting.com with it

        I think it was very much worth the investment. I bought the standard.

        Might be for that, but the mentioned support was actually non-existant for me. But even so, a good purchase for me

    2. 1

      That looks interesting but I could figure out what language is the source code in or any documentation / videos on the site. Which version did you buy .. also seems a little pricey than other alternatives.

  9. 1

    I offer software development services leveraging https://spark.laravel.com/, https://bullettrain.co/ and other kits.

    In terms of productized service maybe someone can built a product that would abstract the actual need for software developers to work on the project.

    1. 1

      Do these kits (spark and bullettrain) come with unit tests so that the technical debt (except for the learning curve) is low to start off?

  10. 1

    Wordpress should be a good fit here, you will need the following:

    1 - a Plugin to Handle the first 4 points - Ultimate Membership Pro (I have used it myself on many membership-based websites)

    • Various Sign-in/up forms and customization
    • A lot of possibilities for custom plans
    • Profile Managment is built in features(you can customize this to your liking if you are into CSS)
    • Integrates multiple payments gateways (stripe included)
      2 - a Decent theme will cover the rest (i suggest something light don't go for the 1500+ various options stuff it complicates things)
    • Choose a theme that has king composer, not visual composer (it's bulky and heavy )
      3 - there some other decent plugins that could help with the basic
    • SEO: Yoast
    • Opt-ins: ConvertPlus
    • Emails: Mailster, if you want to handle emails onsite with lists and couple of decent options as well
    • Live Chat: Crisp for free

    this should get you up and running in no time, also a cheap-shot option to have an MVP.

    This is all based on my personal experience and I've tried all of those myself, if you need help or suggestion tell me and Best of luck

  11. 1

    I rigged Memberful (memberful.com) to handle these features for a single-page React application:

    • signup/login
    • create and manage subscription plans
    • Stripe integration
    • account and profile management

    Though, I'm not sure if it would fit the bill for theme changing and website management. Maybe take a look into an open-source project for your language of choice?

    Node: github.com/eddywashere/node-stripe-membership-saas
    Ruby: github.com/RailsApps/rails-stripe-membership-saas
    Python: github.com/pinax/pinax-stripe

    1. 2

      Memberful seems pretty nifty... problem with managed service like this is the risk if they don’t fly.

  12. 1

    We're actually looking towards doing something like that. Which technologies/language would you prefer?

    1. 0

      That is a good question. I have thought about it quite a lot and if you think from developer standpoint it comes down to individual preferences i.e. python or php (like spark library) or java / nodejs . On the other hand there are efforts like bubble.is . From the perspective of an entrepreneur, developing these components , just seems a bit of wasted effort for components that are always so common across most online projects. On the other hand I have tried bubble but it still seems too much needs to be done (i.e. think visual basic but still a lot of work).

  13. 0

    Here's my take on this:

    • Sign up and login
      Wordpress custom user roles
    • Create and manage subscription plans
    • Stripe integration
      Either use the user related filters and hooks to do this or use a plugin like wp simple pay(you'll still need to integrate this)
    • Account and Profile management
      Again, Wordpress custom user roles
    • Theme change
      Wordpress has this built in
    • Website management
      Again, Wordpress has this built in

    This approach is not feasible for scenarios where you need to move bits of data quickly around. I would suggest developing the 'app' in nodejs and making it communicate with wordpress using the REST API or something.

    Lastly, Wordpress despite heaps of improvements, still sucks for developer friendliness(people recommending plugins instead of code samples, can't use templating engines like pug, ejx, etc, should be vary of attackers, big memory footprint[although that can be mitigated])


    There's also keystonejs which is a CMF made in nodejs. Its pretty solid and quite developer friendly but the development seems to have stalled.

    1. 2

      Thank you for your detailed reply. Looks like WP has most of it - now as you say need to find a way to design your app around WP or inside WP context.

  14. 1

    This comment was deleted 6 years ago

  15. 1

    This comment was deleted 7 years ago