Hey, ceo/cofounder of Repl.it here. Was pleasantly surprised to see this on HN! React Native and Expo has taken the world of mobile development by storm and we're happy to play a part in spreading this amazing technology.
Many of you might know us from being one of first in-browser REPLs (for 30+ programming languages https://repl.it/languages). Our mission is to make programming more accessible and that's why, more recently, we've been also working on tools for educators wanting to teach programming. Our Classroom product (https://repl.it/classrooms) makes it easy for anyone to teach programming online and in physical classrooms.
> 2. Do you think that native gui widgets could be emulated on the browser in order to do native development on your platform?
A lot of users request support for things like Python Tkinter for example, and while it's possible (e.g. stream via VNC) we always try to balance our users' requests and where we believe programming is headed. For example, there has been a massive shift from native GUI to web-based tech (even on the desktop via Electron).
> 3. Will you offer a pipeline from repl.it to app stores? One click publish sort of thing.
Yes, we're considering that and not just for React Native for other platforms as well. Imagine building a web service on Repl.it and hosting it with one click!
I really like the idea of using Repl.it for teaching React Native using your classrooms product. There are 2 things that I think might make it more useful. Integration with https://appetize.io/ and allowing multiple files.
Appetize.io would allow people to use, play, and share this without having install Expo on their device (even though that's already a very low bar). Also, I think after learning some basic React Native concepts, it'd be useful to create multiple React Components in multiple files.
As for Appetize, will check it out. For now I have to reiterate that Expo is magical in that after you download the mobile app it's seconds and you're up and running and then running the code on the phone is sub-second.
I've said it before but Expo is the first bootstrapped mobile development environment and I think we're just scratching the surface with what can be done with this tech.
That being said I'll check out Appetize and if it's not too expensive will look into integrating it.
Nice. I think multiple files is more helpful. Expo on a device is pretty easy to get going. I mainly recommended appetize because I think it's a useful feature used in Snack when you click "preview"
Hey, I'v used Repl.it a fair amount for Python in the past. Seems like you've built a really nice tool which has lots of languages supported. Out of curiosity, how are you funded?
Was a side project in hibernation that didn't cost anything to run. Around 2015 we revamped the site and added a lot of features which caused us to grow a lot and became too expensive to run and maintain. Quit my job last year and raised a seed round but still try to keep burn rate to a minimum and hope to start making money soon.
Hi- Cofounder of Expo here. Was really fun to work with the Repl.it team on this. This came out really well. It's such a good way for novices to learn to make mobile apps.
They both seem like browser based code editing tools to make a react native app. Why the partnership with repl.it? Do they have a larger use base and thus give you visibility?
Small world! I consider myself really lucky to have worked with you (Amjad) and Andrew (Canny Founder) on the React Native team in 2014/2015. Great times!
Canny, repl.it, plus Expo of course.. you're the React Native mafia!
Dynamic, Responsive Layout for Universal and Orientation-Aware React Native Apps (works in Expo, XCode et al): Flexbox-based layout library that makes building Universal layouts in React Native more fun and much easier than using Flexbox and JS directly.
Is it possible to support creating and deploying Minecraft server mods using repl.it?
At one point (2-3 years ago) my son was interested in doing this but the pain of installing Java, an IDE (NetBeans), getting started in Java programming and deploying it on a vanilla Minecraft server was just too much.
Or are there better options now for Minecraft server mod programming?
Hey, we've looked at Minecraft and I think it's a great game to encourage kids to learn to code. In fact a lot of teachers teach Python and Java on Repl.it so that their students can learn how to tinker with Minecraft.
There are a couple of startups out there that try to help with Minecraft modding. Check out Tynker and I think Code.org has something on Minecraft.
If you have any specific ideas on how we can help with this please shoot me an email amjad@repl.it
Hey, at their ED event last week Microsoft announced a platform specifically designed at teaching kids coding with Minecraft -- seeems right up what you are looking for!
I disagree. When you're just starting out all this software you have to install is really discouraging. Plus some people don't own their personal computers and use the computers at school etc so it's much better for them if there was a portable development environment.
I'm willing to guess that's where things got hard, not installing and running an app. Would you know what to do when NetBeans throws you in front of an empty text editor? Or, when starting a new project, did you know the canonical way of naming things without being shown once?
repl.it integrates this with their classrooms product to make it into a structured learning tool with assignments and automatic evaluation of solutions. Direct link to the course: https://repl.it/community/classrooms/17650
It's the same technology (backed by Expo) but it's integrated in Repl.it's platform and community. Additional benefits include the ability to teach and/or build online courses. Or if you're already using Repl.it it's cool to have all your programs/experiments/homeworks/prototyping in one place.
Deco is great but it's an IDE and the way we approach things is a little bit different than how IDEs do. Generally speaking, when you're an IDE you're competing with all the other IDEs on feature-by-feature basis because you want to support the entire developer workflow.
For Repl.it, we approach everything from the novice point-of-view. We're ok with things being missing as long as we make it very easy for people who are just getting started with programming. We'll expand towards more power as long as it doesn't overwhelm or takeaway from the beginners experience.
For example, when we wanted to support third-party packages one way we could've done it is allow people bash access to install packages from PyPi but instead we've invested the time to pre-install all PyPi packages in existence on shared drive (https://repl.it/site/blog/python-import) and mount it on every container we start for our users. That way you don't have to know how to install it to get started with, say SciPy.
Besides the last commit on this repo being 6 months ago, I'd bet most HN users aren't looking to pick up another IDE if at all possible. We use repl.it a lot in my CS program because:
1. Students can just code now without having to worry about tooling
2. It's an easy way to share what you've coded without tooling (seeing a trend?)
We're planning to add file and project tree support. For now it's more geared towards prototyping, intro courses, and experimentation. Stay tuned, we hope to have something for you soon!
I really want to learn React Native and this looks like a fantastic tool. Does anyone have any documentation that easily explain design patterns in RN? Does all code live in 1 file?
We haven't started monetizing yet but we already announced our plans for Pro accounts. We've been lucky that our platform has been very popular in highschools, colleges, bootcamps across the world so we'll be charging for additional features hopefully soon.
I was looking everywhere for info on pricing, I suggest you mention this somewhere.
With the "create a free account" I thought I'd have to go through all the trouble of signing up before being faced with what I'd have to pay (looking at this as a teacher).
I found it surprisingly useful with my phone. But I couldn't edit the code using my regular keyboard (swiftkey), it did not add letters, only replaced the letter before the cursor, but it worked fine with the stock android keyboard. Haven't experienced that elsewhere.
Many of you might know us from being one of first in-browser REPLs (for 30+ programming languages https://repl.it/languages). Our mission is to make programming more accessible and that's why, more recently, we've been also working on tools for educators wanting to teach programming. Our Classroom product (https://repl.it/classrooms) makes it easy for anyone to teach programming online and in physical classrooms.
Happy to answer any questions.