Updates from the Repl.it team about the product

Posts
Pinned
✨✨Introduce Yourself! 👋 ✨✨
Hi everyone! Use this space to share anything you want to share with our community - your name, where you're from, what you program in, what brought you here... whatever you're comfortable with! Can't wait to get to know y'all. 💖 Katya
71
posted by katyadee (437) 6 days ago
Pinned
26
⚡️DEVELOPER SPOTLIGHT #02:⚡️simontiger
### Welcome to another **Developer Spotlight**! Today we (virtually) sat down with 9-year-old Belgium-based [wunderkind](https://www.youtube.com/watch?v=6tTTTefBOTM) [Simon Tiger](https://simontiger.com/bio) and his mom, Sophia. ![virtualcafe](https://storage.googleapis.com/replit/images/1558117457012_f78ae7e0c19948a20c80589fa6bf96be.gi) Simon came to our attention after he shared a [repl](https://repl.it/@simontiger/Raytracing-AI-Full) of a neural network he’d built. Without further ado, here’s our interview: ![DSC_1714](https://storage.googleapis.com/replit/images/1558117472077_b0302d03c7cd3f6bc8d000215dbde72b.jpe) **@katyadee**: If you could sum yourself up in one sentence, how would you do it? **@simontiger**: This would sound a bit circular, but I would say: "To sum me up in one sentence: You can't sum me up in one sentence.” **@katyadee**: I think that actually says a lot! You’re really well spoken—are you really 9 years old? **@simontiger**: Turning 10 soon. **@katyadee**: Wow. So, are you in school? **@simontiger**: No, I’m homeschooled. We even had to move to Belgium to be able to homeschool, because school is mandatory in the Netherlands (where I'm from), and it didn't fit well with me. **@katyadee**: That’s really cool that you guys find a way to make it work. I really like your mom’s site. It says you’re a mathematician… I’m wondering, what does that mean to you? Are you doing research? **@simontiger**: Well, that's a difficult question. I see patterns in the world wherever I look. I just love doing math, I'm doing math loads of time every day. Like I'm writing a short book about knot theory and experimenting with knots. Or I want to use Penrose's Illumination Problem in my coding. And I make math videos. Ron Graham said he liked my video about the Graham Scan Algorithm!
 ![DSC_2176](https://storage.googleapis.com/replit/images/1558117484722_10c8c3e4cf27345350a24dc98989e0a2.jpe) **@katyadee**: I’m blown away. [Ron Graham](https://en.wikipedia.org/wiki/Ronald_Graham) - that’s no joke! Speaking of coding, how’d you start? **@simontiger**: With Arduino and Sparkfun. And I discovered Arduino through [littleBits](https://littlebits.com). Arduino was how I discovered [Processing](https://learn.sparkfun.com/tutorials/connecting-arduino-to-processing/all), and how I discovered [Coding Train](https://codingtra.in) by Daniel Shiffman. He always watches my videos and has become my friend. And I participate in [Coding Train Live Sessions in Slack, too](https://youtu.be/LdWCL0pRD6M). **@katyadee**: Wow! Where’d you go from there, after Arduino? What was your first language? **@SimonTiger**: Surprisingly, not English! It’s not my native language. I taught myself English by watching coding videos, mainly. My actual native languages are Dutch and Russian. **@katyadee**: Oh, I meant programming language! I’m sorry. **@SimonTiger**: After C, with Arduino, I started using all sorts of languages for a while but now I have settled on JS, Java, Python, and sometimes Haskell. And sometimes even the Wolfram language! ![DSC_2019](https://storage.googleapis.com/replit/images/1558117496934_e4e80268ac5e30e2979f34b7513480b2.jpe) **@katyadee**: What brought you to Repl.it? **@SimonTiger**: I was first just looking for an online Python editor, because my computer memory was (and still is!) almost full.  I first found onlinegdb.com, but then, after a while, my code disappeared! And then I started using Repl.it. And now I even no longer only use Python on Repl.it, but also JS. I one time tried to use Haskell on Repl.it, but that didn't really work for my purpose, because the browser runs on JS which is a strict language, and Haskell is a lazy language. **@katyadee**: What’s your favorite thing you’re building on Repl.it? **@SimonTiger**: Pretty much all of my repls are a work-in-progress. Here are two: [Raytracing A.I.](https://repl.it/@simontiger/Raytracing-AI-Full) [Sorting Algorithms](https://repl.it/@simontiger/SortingAlgorithmsImproved) **@katyadee**: One last question for ya. What are your plans for the future? Your present is pretty darn cool. **@SimonTiger**: Depends on what you mean. More coding, math, and physics—if that counts. ![IMG_20190510_131529](https://storage.googleapis.com/replit/images/1558117528301_d3c17eea2606c9e49d535b4f99b1408e.jpe)
19
posted by katyadee (437) 6 days ago
249
👋✨Introduce yourself 🎉😀
Hello everyone! Let's use this thread to get to know each other. Just say hi and a few words about who you are, maybe what are you building or learning with Repl.it. If you're not comfortable sharing anything then share something fun 😉
699
posted by amasad (1177) 11 months ago
69
Announcing Universal Package Manager
Open-source has revolutionized software development -- it wouldn't be an overstatement to say that it's been the most significant productivity win for developers in the last decade or so. At Repl.it, our goal is to make programming more accessible and what better way to do that than make available to programmers the entirety of open-source packages available at their fingertips. Today we're excited to announce our Universal Package Manager -- the Repl.it package manager that will grow to support every language on our platform. Where traditionally you have to learn and use different package managers for different languages, now you can install any package in any language that we support behind the same interface. We're now starting with JavaScript, Python, HTML/CSS/JS, and the web frameworks that we support. ![](https://thumbs.gfycat.com/AmazingPessimisticAddax-max-14mb.gif) We've had [basic support](/site/blog/python-import) for automatic package detection and installation for a while now, but what changed is that we support search and spec files (package.json, gemfile, requirements.txt, etc) across the board. Furthermore, where we used to write custom code for every language that we support, now we merely add fields to a config file. This was made possible by creating a common package manager runner abstractions. Adding package manager support for a language is as easy as adding a couple of fields in a JSON config: ```json "dependencies": { "env": { "PYTHONPATH": "/run_dir/customize", "MATPLOTLIBRC": "/run_dir/" }, "installDir": ".site-packages", "findCommand": [ "python", "/run_dir/findreqs.py", "--ignore", "/home/runner/.site-packages" ], "installCommand": [ "pip", "install", "--target=/home/runner/.site-packages" ], "specFile": "requirements.txt", ``` In addition to this we have a more ambitious project in the works to build the same package manager that works across all languages (with the same semantics). You should [come work](/site/jobs) with us. [Signup](/signup) and start [coding](/languages).
28
posted by amasad (1177) 10 months ago
44
Repl.it GFX Public Beta: Build Games and GUI Apps
Hello everyone, We've spent months researching methods to implement a cross-platform and cross-language graphics engine in Repl.it. With our Explorer's help, we've explored different ways of doing graphics -- some of you even built [amazing](https://repl.it/talk/share/NEW-Play-2048-248-In-The-Terminal-in-Cheavy-plusheavy-plus-With-SIXEL-Graphics/9750) things on it! However, the time has finally come to start rolling out our graphics system. It's still buggy and requires some more work but it works. Some of you might have even already discovered it. ![Screen Shot 2019-03-09 at 6.43.13 PM](https://storage.googleapis.com/replit/images/1552185817380_328d759b19256760a3ee8bfbc3e495f6.pn) While we intend to roll this out to all our languages we're starting with a few specific environments and we'll generalize from there: - [Python Pygame](/languages/pygame) - [Lua Love2d](/languages/love2d) - [Python Tkinter](/languages/tkinter) - [Java Swing](/languages/java_swing) Here is a taste of what the development environment might look like: ![ezgif.com-gif-maker (7)](https://storage.googleapis.com/replit/images/1552186822795_393dd03eb8f3426892863ffbf5df31bc.gi) Some limitations and known issues: 1. The graphics window is shared across clients. I.e. if you share your repl with someone they'll be able to interact with the same window you're interacting with. It 2. You have to fork someone's repl before seeing the result. 3. Sound sadly doesn't work yet We're hoping to fix these pending issue in the next week. [TO TRY IT FORK AND FUN] I pulled a few examples from the web for you to check out. - Java Swing Pacman: https://repl.it/@amasad/Java-Pacman - Love2D Snake: https://repl.it/@amasad/LOVE2D-snake - A simple platformer in Pygame: https://repl.it/@amasad/simple-platformer - Simple color game in Tkinter: https://repl.it/@amasad/color-game
41
posted by amasad (1177) 2 months ago
40
Become an Explorer!
### What is Explorer Mode? Enabling explorer mode lets you use features before it goes out to everyone else. You'll get features like collaboration repls and more! Remember that all explorer features are experimental, so there will be bugs and glitches. When you find these, make sure to report them at https://repl.it/bugs ### How do I Enable Explorer? First you need to get to your account settings. You can do that by clicking your name at the top right of the screen and selecting Account or by just going to https://repl.it/account. Next, click Roles and enable the Explorer check box. You are now a Repl.it explorer!
8
posted by mat1 (2034) 9 months ago
39
Repl.it Mobile App MVP
**We did it!** [10 days ago](https://repl.it/talk/ask/Replit-Mobile-App/13853) I created a post asking if people were interested in a mobile app for Repl.it. The answer in general was yes, and I set out to build the best possible thing I could. And I just released the MVP of the app. Here are some supported features: - Creating and deleting repls and files 📂 - Both dark mode and light mode 🌚 - Integrated code editor with syntax highlighting 💻 - Rich editor preferences ⚙ - Works on both Android and iOS 📱 And I'm planning on adding much more, including Repl Talk support. I couldn't have done this without the help of all the amazing testers on our Discord server as well as support from Repl.it team members. This was also a fun experience learning React Native. ![Screenshots](https://storage.googleapis.com/replit/images/1557505257614_3675e7514d3ef4c35bd5da45cff18b87.pn) **Q: Where can I download it?** A: You can download the Android app [here](https://exp-shell-app-assets.s3.us-west-1.amazonaws.com/android/%40kognise/replit-mobile-fedb162be7844a9a97edd7dd4bed7c82-signed.apk). iOS is supported but I don't currently have a release. **Q: What about running repls?** A: Although you can view web repls, other types of repls are not currently supported. Repl.it recently moved to an API based on [protocol buffers](https://developers.google.com/protocol-buffers/) and due to several concerns of theirs we may have to wait until June. **Q: What the heck is an MVP?** A: MVP stands for "minimum viable product." According to [Wikipedia](https://en.wikipedia.org/wiki/Minimum_viable_product), it is "a product with just enough features to satisfy early customers, and to provide feedback for future product development." **Q: What did you build it with?** A: I used [React Native](https://facebook.github.io/react-native/) as well as many other open-source projects including [React Native Paper](https://reactnativepaper.com/). I really appreciate all the work the maintainers of these projects put in that helped make Repl.it Mobile so much better. If you're interested and want to learn more or get early access to features, make sure to [join the Discord community](https://discord.gg/sVxJJZA)! *Disclaimer: Repl.it Mobile is currently a community-run project. You can view the source code [here](https://github.com/kognise/repl.it-mobile).*
34
posted by Kognise (145) 14 days ago
37
The Repl.it Chrome Extension 🌐
Hey everyone, One of the coolest things about repl.it is how fast and simple it is to experiment with others' code. I've been working on a chrome extension which allows you to run code all over the web on repl.it, with just one click. The chrome extension adds prompts to NPM Packages and Github Gists - letting you try out examples as soon as you see them. ![Gist + NPM demo](https://storage.googleapis.com/replit/images/1554287819263_b57c54681794c790cff4bb6eea83602f.gi) But, that's not all! The chrome extension lets you run literally *everything* on repl.it! Just select some code, enter a language and boom 🤯 ![Right click run demo](https://storage.googleapis.com/replit/images/1554287926512_0df04df5f9eb5c6d4bf7db61e74131a8.gi) 🚀🚀🚀 Get it now on the [Chrome Webstore](https://chrome.google.com/webstore/detail/replit/kihnihckibjknmebghcjpmemaginnipl) I'm looking forward to hearing ideas + feedback from y'all :)
19
posted by jajoosam (472) 2 months ago
34
📕Language Learning Club 🤓
Henlo frens, We're planning on starting a programming language learning club where we pick a language and a book (ideally with lots of exercises) and start learning it together. I'm flexible on the structure but here's a proposal: - We read a chapter and then we discuss it on discord (maybe voice) - We then do the exercises and share them here on repl talk I sadly don't have time to organize this so we need volunteers. @noah427 is interesting in organizing if someone else would join him as well. Please comment if you want to join `||` volunteer
37
posted by amasad (1177) 3 months ago
28
Kickstart your project using Templates!
At Repl.it, we are all about propping you up to launch your next website, app, or game. To that end, we've created Repl.it Templates, a page containing starter code for various projects you can build on Repl.it. ![templates-min](https://storage.googleapis.com/replit/images/1557165473632_69224b048b43035e83017fdaf1763f97.gi) Templates include: * an e-commerce landing page using Bootstrap * an interactive game using Phaser.js * a backend server running on Python's Flask * a virtual reality environment in your browser using A-Frame * And so much more! ![](https://images.templates.repl.co/html/aframe-starter.gif) We're proud to showcase these templates, created by our community. You can access these templates at the [templates page](https://repl.it/templates), or by finding the card in your dashboard's recent repls: ![image](https://storage.googleapis.com/replit/images/1557165340307_f5d8189066b99e14a78bae7d440689dc.pn) Want to add a template to the page? We're always looking for new templates. Submit your repl [here](https://forms.gle/5653FVhuqgP6jG5Y8)! Please be sure to leave any feedback for us in this thread. Happy templating!
5
posted by timmy_i_chen (869) 17 days ago
24
Repl.it Code Intelligence
At Repl.it our goal is to provide state of the art in developer tools to everyone in the world, for free. When we started moving our product beyond a simple REPL and started adding IDE features, we had to invent standards and wrappers around every language tool for our frontend to consume. For every editor feature, say errors and warnings (linting), we had to extend our development protocol with a set of commands and data structures, and then teach our development containers how to wrap the given tool, say Pylint, and our frontend on how to consume it (say annotate the editor with errors and warnings). A similar thing has been happening with IDEs for the past few decades -- every editor had to come up with their in-house ad-hoc protocol, and every tool developer had to build adapters and wrappers for editors to consume. However, this is about to change: a couple of years ago, Microsoft's VS Code team announced ["A Common Protocol for Languages"](https://code.visualstudio.com/blogs/2016/06/27/common-language-protocol), a single all-encompassing protocol that provides general-purpose language tooling -- be it refactoring, code-completion, or errors and warnings -- all implemented once and then seamlessly plugged into any editor that understands this protocol — this was dubbed the "Language Server Protocol" [(LSP)](https://microsoft.github.io/language-server-protocol/). In addition to LSP, VS Code also open-sourced the editor that powers VS Code: [Monaco](https://microsoft.github.io/monaco-editor/). Monaco is an editor built with web technologies, and since we started looking at LSP a few months ago, it only made sense for us to transition to Monaco first. Even before the introduction of LSP on Repl.it, Monaco allowed us to provide some cool language features (Smart Autocomplete, Go to Definition, Find References) for TypeScript and JavaScript because they're bundled with the editor. On top of that, the editor has a slick feel to it. In this release, we're rolling out language servers for Python (2, 3 and Django), C, C++, and ReasonML. And soon we'll be adding support for more languages -- Java and Ruby are looking to be next in line. Let's run through some of the features: ### Autocomplete and signatures ![autocomplet](/public/images/blog/lsp/autocomplete.gif) ### Jump to definition ![jump to definition](/public/images/blog/lsp/def.gif) ### Find references ![find references](/public/images/blog/lsp/refs.gif) ### Refactor ![refactor](/public/images/blog/lsp/refactor.gif) ### Linting ![linting](/public/images/blog/lsp/linting.gif) ### Hover ![hover](/public/images/blog/lsp/hover.gif) ### Formatting ![formatting](/public/images/blog/lsp/formatting.gif) ## Conclusion Give it a spin by going to the [languages](/languages) page and selecting one of the supported languages (Python, ReasonML, C, C++ for now). This release gets us one step closer to our vision of building what we call "[a holistic development service](https://repl.it/site/blog/holistic)," a long-lived always-on service that understands your code in all its stages and that you can use anywhere and at anytime, regardless of your device, platform, location, or your programming language. We've given ourselves the impossible task of building a top-notch ready-to-use development environment for every language under the sun. It remains to be seen whether we'll be successful at this, but what's clear is that we can't do it alone. So thank you to the VS Code team and the fantastic community building language servers for making our jobs easier. Stay tuned for more language LSP support.
8
posted by masfrost (40) 11 months ago
23
So… who exactly won the repl.it Game Jam?
We (virtually) sat down with **@ggzor** to talk about his and **@MarisolH’s** coding background, what they plan to do with the 1BTC, and of course, their game, [**SceneMachine**](https://repl.it/talk/challenge/SceneMachine-Drag-configure-and-shoot-SVG-2D-Physics-Game/13329). ![Axel Suárez](https://storage.googleapis.com/replit/images/1556666291148_7d39a5c5eaf21039f85a2ca24a892003.jpe) ![Marisol Huitzil](https://storage.googleapis.com/replit/images/1556666305755_52d485db0ad16ea675a15b9e18ae4899.pn) **Katya:** First of all, congratulations! The team here at repl.it and our judges loved your game, SceneMachine. **@ggzor:** Hi! I'm just shocked!  :O It's incredible! I didn't think we could win the Game Jam, it's just... I'm really shocked. Thank you a lot! **Katya:** We know your usernames, and we know your game. Who’s behind @ggzor and @MarisolH? **@ggzor:** I’m Axel. I’m 19 years old and I study computer science in [Puebla, Mexico](https://www.visitmexico.com/en/main-destinations/puebla). I’m a young programmer who loves to code—I’m really passionate about [functional programming](https://medium.freecodecamp.org/an-introduction-to-the-basic-principles-of-functional-programming-a2c2a15c84?gi=6946a0fc643b). 

My teammate, Marisol, is also 19 and studying CS in Puebla. She is more passionate about design and cats. ![cat](https://storage.googleapis.com/replit/images/1556666318299_2b98446ddf714802255fd38e8bf30f81.jpe) **Katya:** How did you hear about the game jam? **@ggzor:** I saw the game jam badge while I was working on a repl. I didn’t immediately go to the blog, but I was curious about it… After I finally read it, I started thinking about what to do. **Katya:** Had you ever made a game before? **@ggzor:** The only game I made before was a little private project. I never finished it, but I plan to finish it soon. **Katya:** How did the idea for SceneMachine come about? What's the story behind the game?
 **@ggzor:** Well, the SceneMachine was an idea I had right after reading the Game Jam post. I am really excited about [reactive programming (RxJS)](https://medium.freecodecamp.org/an-introduction-to-functional-reactive-programming-in-redux-b0c14d097836), so I wanted to make a game about it.  I really love how stream operators mix and match, so I first thought of replicating operators in the game. The original idea was to make a "pipes" game, but then, I was watching some videos from [“The Coding Train”](https://www.youtube.com/channel/UCvjgXvBlbQiydffZU7m1_aw) and how he used the Matter.js library to make awesome stuff (he was creating an Angry Birds replica), so I got inspired to create something similar, but with additional "elements" which were intended to work as the RxJS operators. ![coding train](https://storage.googleapis.com/replit/images/1556666331233_a5fed55ded4884cbd01778295ebf408d.jpe) It was a little bit hard to me to think how to create the game mechanics without pipes, because some basic RxJS operators are all about pipes (streams). Additionally, the physics add another dimension to the game, so I discarded the idea of replicating the operators. But the idea of **composing elements to complete objectives** (there was no story at this point), was just incredible for me.  Here the name "SceneMachine" was born. You put elements into the scene to create your own machine.  ![Screen Shot 2019-04-30 at 4.20.02 PM](https://storage.googleapis.com/replit/images/1556666412632_f9efb34cce3b7c25d3565352a69cd06d.pn) **Katya:** How long did it take you to design? What was your work process like?
 **@ggzor:** It wasn’t completely planned.  I began playing with the [Matter.js physics library](http://brm.io/matter-js/) and the [SVG.js library](https://svgjs.com), and I was trying to make them work well together. Then, I found that Matter.js had a SVG parser, so I started designing a quick level with Inkscape. After designing a simple level, I tried to display it on the screen and make it work with Matter.js. It took me a complete day to make it work, but when it was done, I realized the potential of designing the levels with an SVG tool, and then loading them into the game.

After getting level loading to work, I realized that I would need a game scene camera. So I started programming the camera, but I wanted to do it with RxJS. It was painful. I had not used RxJS for this kind of stuff before, so I fell into the many pitfalls of reactive programming. It took me four days to get it working properly.  Fortunately, I eventually got it working, I learned a lot and I got enormous flexibility from the implementation (I didn't take full advantage of all the features the implementation gave me, as automatic positioning, zoom and object tracking). Now, I had to manage game state. How to do it? RxJS. Result: still painful. It took me another three days to try making RxJS handle the game state, but this time, I failed. By this time, I was already working on the UI, so, when I tried to join the state management and UI, they didn't work. So I changed my approach, and let the UI code guide the game state design. Finally, this gave me a solid state management implementation (which I didn't have time to refactor). This is what let me implement cool features like the physics engine pausing. The last two weeks, I worked designing and implementing the elements (with RxJS, of course) and polishing many parts of the game. This time, it was way easier two make RxJS work well, as I got more fluent with RxJS for this kind of stuff. Finally, the last week was really intensive, I had to work night and day designing and testing the levels. In-game tips were hard to implement. The reason I used HTML/CSS/Javascript is because it is supported natively by almost any computer. Also, because it's the main technology I've been working at recently and also because it's ease of use. **Katya:** What inspired the storyline? **@ggzor:** The story was inspired by the movie [“The Core"](https://www.youtube.com/watch?v=mZzhJeuOJGQ). I really liked this movie since I was a child. **Katya:** How did you and @MarisolH find one another?
 **@ggzor:** I worked with @MarisolH before, making some illustrations with Inkscape for a school project. She is an amazing drawer, so I didn't doubt telling her about the project I was working on. She did amazing work designing the backgrounds, and even designing some levels (level 3, 5 and the two maze levels).  She also helped me test the game, I really appreciate her work. As I have said before, this game wouldn't be possible without her help. **Katya:** Do you plan on fleshing the game out, and making it bigger? Any plans for a wider release?  **@ggzor:** Yes! I plan to continue working on this idea. But maybe I will take a different approach to make games. I've learned a lot from this project, I haven't made anything like this before (it impresses myself a lot!). I loved how RxJS let me write clean game state management and user interaction. I think that with more time, I could do something really cool. **Katya:** What are you going to do with the 1BTC?  **@ggzor:** Well, we didn't make plans to spend the Bitcoin, but I think we both will get better computers to continue making games.
20
posted by katyadee (437) 23 days ago
22
Weekly Repls #33
Welcome back everyone! We had a lot of events going on, such as the discord server's code jam. The results of that have yet to be posted, however I have a feeling that they'll be coming out soon... Anyways, you're not here to learn about the jam. You're here for this week's repls, so let's check them out! @CowNationz [Creates a wonderful, easy to use database in C++, lightweight and can easily display it's tables.](https://repl.it/talk/share/MooDB-A-lightweight-database-program/14307) @timmy_i_chen [Created an entertaining game for all to play! Flip switches until you create the correct combination.](https://repl.it/talk/share/Byte-The-Game/14229) @eankeen [Explains how to create your own blog setup, all inside of repl.it!](https://repl.it/talk/learn/Blogging-on-Replit-with-Hexo/14074) @lukel_lv [Through the new Love 2D language on repl.it, play asteroids to explode all of space.](https://repl.it/talk/share/Asteroids-game-made-with-Love2D/14066) @TristanArmstron [Play a simple, but really fun game of cows and bulls, where the objective is too find a 4 digit combination, with a variety of small hints.](https://repl.it/talk/share/Cows-and-Bulls/14124) That's all for this week. I can't wait to see what you guys make next week!
0
posted by 21natzil (596) 17 days ago
22
New Feature: Folders for your Repls
If you look at our [top requested features](/feedback/?sort=top), repl management is both the 3rd and 4th most requested feature. We understand that many people have multiple uses for Repl.it, and that they want to organize their repls to more easily find the ones they want. ![folder-demo-min](https://storage.googleapis.com/replit/images/1548984875519_01e1c638882256eeb64de63e2c7fb260.gi) To that end, we are happy to announce that you can now organize repls into folders on your [repls dashboard](/repls). You can create as many folders as you like, and you can create folders within folders. Moving repls is a breeze - you can drag and drop repls into folders. If you want to move a repl or folder deep into nested folders and you don't want to drag it around too many times, you can do so by clicking on the 3-dots-menu and selecting "Move". Selecting multiple repls is also a breeze. Hold shift to select a range of repls and folders, or hold ctrl/cmd to select specific repls and folders. Multiple items can be dragged and dropped into folders. This is just the first step in a few steps we're taking to improve the Repl.it experience. Soon, you will have a special folder called "Unnamed" where unnamed repls will automatically go. If you wanted to get a head start on this feature, you can do so simply by creating a new folder called `Unnamed` in your home directory on your dashboard. Newly created repls will then go into this folder. We have more planned and in the works. We're excited to see how users will use this feature, and we welcome any suggestions and feedback you have on our [feedback boards](/feedback). You can also leave a comment on this post.
12
posted by timmy_i_chen (869) 4 months ago
21
Repl.it Stability Update
Some of you might have noticed some features on Repl.it might have not been working quite as expected over the last few days. To be more specific, we've had a few bugs with servers not waking up and packages not installing. We've been actively working to get these bugs fixed, but you might want to know what caused them. Behind the scenes, we've been migrating Repl.it to use a brand new protocol when talking to your container. Our new protocol has all sorts of fun stuff like channels to do multiple things at the same time and collaboration as a first class primitive. We've been using the same protocol since the beginning of our containerized repls (about 4 years ago) and it has long since started to show its age. It was designed for a simpler time when Repl.it was just sending an `eval` and get a `result`. Pretty much every feature after that was hacked on top of this simple protocol. Very soon we'll start rolling out features previously not possible in our old protocol. At this point, all the bugs (we know about) related to the new protocol have been ironed out. If you run into anything unexpected please post them over at https://repl.it/bugs/. Or, if you are on our discord, let us know in the #bugs channel (you can @turbio). Remember to include a link to your repl, that helps us out a lot.
8
posted by turbio (34) 3 months ago
20
Repl.it Node API
# Hey Repl.it! I made a Node module that lets you create, write files to, and run Repl.it projects! If you want to install it, it's called `repl.it-api`. **If you want to quickly try it out there's a usage example hosted on Repl.it close to the end of this post.** ## Why? I wanted to distribute a NPM library that uses fairly modern coding practices that also has a use. One possible use is a command line program for deploying projects to Repl.it. Earlier I made one but as soon as Repl.it updated their API it broke and was a pain to maintain. With this dedicated, isolated library, something like that would be **much** easier to both develop and maintain. The other thing which I am more excited about, is a "Deploy to Repl.it" button. Have you ever seen those buttons on GitHub repos that say "Deploy to [Now/Heroku/Netlify]"? They're super awesome because you can have your own copy of an app deployed in seconds. I want to make one for Repl.it. You click the button and it transports you to a new Repl.it project with all the code ready to go and running. ## More Info If you're interested, here are some links where you can find documentation on how to use and install it: - [A usage example on Repl.it](https://repl.it/@Kognise/Replit-API-Example) - [The package on NPM](https://npm.im/repl.it-api) - [The code on GitHub](https://github.com/arch-lord/repl.it-api) - And if you want, contact me on Discord at `archmaster#6356` (nicked archaka) If you have any comments, questions, or feedback of any sort I'd love to hear it in the comments! Thanks for reading this far :D
4
posted by Kognise (145) 3 months ago
20
[Beta/Explorers] Announcing repl.run: publish your terminal apps as websites
Almost everyone's first computer program is a terminal program along the lines of: ```python name = input('What is your name?\n') print('Hi, %s.' % name) ``` Every programmer has experienced an intense sense of accomplishment when someone uses their program. The problem is that, until today, there was no easy way to share text and terminal-based programs. That's why we're excited to announce [repl.run](https://repl.run), where every, and I mean every, terminal program on Repl.it can be published as a website. You'll get a website with a fullscreen terminal with your program automatically running. Here's the @pyelias's classic chatroom `repl.run`ing: ![Screen Shot 2018-10-19 at 4.45.43 PM](https://storage.googleapis.com/replit/images/1539992794270_d005a7259a30aac0a7a88ae303ec0874.pn) Here's what it looks like to publish @ericqweinstein's snake game: ![ezgif-5-af050f7332f1](https://storage.googleapis.com/replit/images/1539992004450_47b122d708c762914fe14f8bebfab063.gi) You can play it at [sssnake.ericqweinstein.repl.run](https://sssnake.ericqweinstein.repl.run/). And the chatroom here: [chatroom.pyelias.repl.run](http://chatroom.pyelias.repl.run). This is only the beginning. We think we built a whole new way to share terminal apps on the web and it's going to take us a while, with your help, to explore all the implications here. Get your own repl.run link by [becoming an explorer](https://repl.it/talk/announcements/Become-an-Explorer/6180).
6
posted by amasad (1177) 7 months ago
20
Repl.it CodeJam Event #4
Welcome to the fourth Repl.it CodeJam! This challenge that fits every coder from beginning to advanced will have you coding new ideas for a topic that is announced. If you need help, you can ask the Admins, Moderators, or your competitors on the Discord server. If you win this free challenge, you will get to be featured on the newsletter, get an emoji on the Discord server, and get the special role on the Discord server. You'll never want to miss out on this coding opportunity, so sign up, and code away! EVENT DETAILS: Date: Friday October 26th, 6:30pm EDT to Sunday October 28th, 6:30pm EDT Length: 48 hours SignUp Form: https://goo.gl/forms/6iu0iHrMw9cir13q2 Discord Server: https://repl.it/discord
7
posted by Mosrod (235) 7 months ago
19
🥇repl.run homepage contest 💻
We're about to release [repl.run](https://repl.it/talk/announcements/BetaExplorers-Announcing-replrun-publish-your-terminal-apps-as-websites/7802) to the public and we want something cool to exist at the [root](https://repl.run). Right now we have Star Wars ASCII animation. Which is kind of lame (Star Trek FTW!) so I'd like to run a mini contest where the winner repl.run program would get featured at the root and you also get a $50 Amazon Gift Card to sweeten the deal. I think it should be something fantastic. Go crazy. Make it weird. The only requirement is that it has some explanation of what repl.run is for new users. Here's a sample copy for what the intro could say: - title: repl.run - tagline: publish your terminal apps as websites - description: up until now there was no way to publish terminal applications on the web. Although terminal apps is what most programmer start their career building (e.g. Hello World) most programs live and die on the coders' machine. repl.run changes this by making it possible to publish an app written in any language that repl.it supports on the web. Deadline: Friday the 22th
28
posted by amasad (1177) 3 months ago
18
Introducing Julia support
Typically programmers are forced to make a tradeoff between speed and ease-of-use. [Julia](https://julialang.org/)'s designers set out to solve this problem and make a language that achieves both! It seems to have achieved its goal as its one of the world's [fastest growing](https://www.zdnet.com/article/is-julia-fastest-growing-new-programming-language-stats-chart-rapid-rise-in-2018/) programming languages. No doubt it's the third-most [requested language](https://replit.canny.io/languages-requests?sort=top) on Repl.it. That's why today we're excited to announce Julia support. ## Walkthrough Julia also ships with an amazingly powerful REPL. In typical Repl.it fashion you'll be able to write full programs in the IDE and then drop into the REPL to explore the output: ![ezgif.com-gif-maker (3)](https://storage.googleapis.com/replit/images/1551987270744_eb3fe8993044774524c8b8dc845519a0.gi) However, it doesn't stop at that. Julia ships with a really nice documentation engine in the REPL. Simply hit control+? and you'll get the help prompt: ![ezgif.com-gif-maker (4)](https://storage.googleapis.com/replit/images/1551987346916_21355d88d18c2c16e8090d6f043ece8b.gi) Finally, Julia has an easy way to include packages from its registry and Repl.it supports that too: ![ezgif.com-gif-maker (5)](https://storage.googleapis.com/replit/images/1551987404312_6fcdda00bd40dc6ebc10e7f9fea80d4d.gi) ## Conclusion This release comes on the heels of our [TypeScript release](https://repl.it/talk/announcements/Introducing-TypeScript-Support-and-JavaScript-Intellisense/11426). This is because we've built infrastructure that allows supporting more languages faster in the future. Give [Julia](/languages/julia) spin and let us know what you think.
4
posted by amasad (1177) 3 months ago
18
Refer a Friend for Free Hacker Plans!
## What's this Referral Program? Do you want to get Hacker Plan, but are unable to pay? Worry no more - with the referral program, you can get Hacker Plans for free! Grab your referral link from your [account settings](/account). Sharing that link with anyone will bring them to the upgrade page, filling in your name as the referrer. If they purchase it, with you as the referrer, you'll get a free 30-day voucher for the Hacker Plan that you can redeem (or gift to someone else to redeem). You can see a full list of all your earned vouchers in your account settings. In the future, we may have referral competitions with hot hot prizes! Any questions? Post below! ![](https://media.giphy.com/media/eCqFYAVjjDksg/giphy.gif) ## FAQ **Q: How many times can I refer a friend?** A: You can only refer the same friend once. Meaning, if Alice refers Bob and Bob cancels his plan right away, Alice can't refer Bob anymore. **Q: How many times can I use a coupon?** A: Only once! And each one is good for 30 days.
7
posted by timmy_i_chen (869) 3 months ago
18
Code Jam Results!
# Repl.it code jam (Make an OS) Now disclaimer, our participants did not make an operating system such as Windows, OS X, or some linux distribution. They had 48 hours to develop an "OS" that had a login, a file system, and could run some programming language. The submissions were great, and I enjoyed scouring every last one of them. Everyone made something super unique and I'm exited to share them with you. ## Let's backup. What is a code jam? A code jam is an event that occurs on the [repl.it discord](https://repl.it/discord) guild. Members from all ethnicities and ages come to build a project around some theme. The theme is announced the day it starts, this time it was *Build an OS*. However you can't just make whatever you want. While that would be super fun, each submission is graded by a moderator, and it would be hard to compare one OS that sends jokes and another that's serious. The requirements are as follows. * ***FILE SYSTEM***: Every OS must have some way to create directories and files, and be able to navigate between them. * ***CODING***: Every OS must have some way to not only write code to a file, but also run code from a file. * ***LOGIN***: Every OS must be able to login to an account. In addition, there were fields that weren't required, however a good OS will have them. * ***INTERFACE***: The interface is how nice the OS displays information and takes in input. * ***EOO***: EOO stands for *Ease of Operation*. This grades how easy an OS is to use. * ***DOCS***: Documentation is very important, I'm not a mind reader, so it's almost essential an OS has this. * ***EXTRAS***: Anything else that the OS has, like being able to read stuff from google, would give people a point. All of the listed categories can be scored up to 5, so a submission could have a total of 35 points max. You can view the 0-5 grades as *Didn't include, Exists, Functional, Good, Nice!, Perfect!* This year people built their projects by themselves, however we've done team jams before. ## Now let's get into the top 5! * (5) We have (repl.it: [@JosephGrace](https://repl.it/@JosephGrace) / discord: @Tunnelbridge#8408) with [WTOS](https://repl.it/@JosephGrace/JAMMMMMM). The only one out of the top 5 submission to use C++, and created an OS that was very easy to use! They had a great file system, however I just wish more effort was put into the interface. * (4) We have (repl.it: [@Harmeet_SinghSi](https://repl.it/@Harmeet_SinghSi) /discord: ♓S#1624) with [DRONE](https://repl.it/@21natzil/AquaRuddySystemadministrator-S1624). A wonderful example of an OS in the web browser. They did a fantastic job with running and writing to files. And the file system was super awesome. Unforchanetly, after tackling such a huge project, bugs were bound to happen. And they really took a toll on major parts of the OS. * (3) We have (repl.it: [@ThatSmart](https://repl.it/@ThatSmart) / discord: JackFly26#8835) with [JackUX](https://repl.it/@21natzil/FifthCodeJam-JackFly268835). This OS was easy to use, with no glaring issues. Especially things like the file system, login, and docs. Could have made their own editor, however the one they had was more than functional. Also, uses polygott, so if you don't know what that is, check it out this submission! * (2) We have (repl.it: [@FelixMattick](https://repl.it/@FelixMattick)/ discord: archmaster#6356) with [Sys.X](https://repl.it/@21natzil/SysX-archmaster6356). This submission is just amazing, and really highlights the talented people repl.it is proud to host! They had both a website, and a terminal version for their OS. Multiple programming languages you could choose to use, the main being JS. Wonderful interface, with great colors. They had a whole selection of extra features, the only critique would be to work on making it easier to operate. * (1) Last, but not least, we have (repl.it: [@pyelias](https://repl.it/@pyelias)/ discord: elias#7990) with [BomOS](https://repl.it/@21natzil/Jam5-elias7990). It was close, but elias, a previous jam winner, just came through with an OS that's chock full of content. With colors to identify files from directories, custom programming languages, did I mention the all the commands, were *written in the custom programming language*! It was very impressive, and I highly suggest people check it out. ## What's next? I enjoyed the theme, and I picked it because I saw an influx in people making operating systems in Repl Talk. Who knows what the next theme will be 😊. People were asking if they could work with partners this time, so we might try that again. The moderators will also work harder to create a better grading system, because if you were in previous jams, you may have noticed that this year's grading is quite different. We're trying new things, so we can optimize your fun! Having the public vote for projects was also suggested, however we've found a few issues with that. The first problem being that we can't ensure people are graded fairly, we don't want this to become a popularity content. The second reason being cheating. People can create alternative accounts, and have those accounts vote for them. It's possible we try this out in the future however, we're open to all suggestions. If you have any suggestions, you can contact me on the repl.it discord (@Zwack010#0001).
13
posted by 21natzil (596) 4 months ago
16
Repl.it Feature Roadmap
At the current time of writing, the Repl.it team is 8 people, and we are often asked about what we're working on. We actually use our [Feedback boards](/feedback) as a roadmap, though it may not be clear. Posts can have statuses like `Planned` or `In Progress`. Let me explain what each one of those means: `In Progress` means that development or design for the feature has begun. It may have just started, or we may have released a semi-working version of the feature (like the [Shell](/site/blog/shell)), for example), and are looking for ways to expand its capabilities. Github integration is another example of such a feature, where we have [importing github repls](/github) but not the other way around - that will come soon. ![image](https://storage.googleapis.com/replit/images/1557814183959_fa7804aff115664e088ce140efccd76c.pn) `Planned` means that we're actively looking for avenues into a particular feature, but development has not yet begun on it - for example, we know for sure that we want to make a Repl.it mobile app, but we currently don't have the bandwidth to support it right now. And then there are features that are not in progress or planned. If you've been eyeing a feature in this category, fear not! It does not mean that we don't want to implement it! If we put every feature we wanted to add under "planned", that word would lose all meaning as we would love to implement 99% of feature requests that come in. But as a team of 8, we can only do so much, and we ask for your patience as we build the perfect tool for everyone. [View features in progress](https://repl.it/feedback/?status=in-progress) [View planned features](https://repl.it/feedback/?status=planned) What you see on these pages are also not exhaustive. We're quite busy every day and we sometimes forget to give a post a particular status. If you're ever curious about any of them - just ask! We don't bite. :) Happy programming, Tim
3
posted by timmy_i_chen (869) 9 days ago
16
Handling Infinite Loops with Backpressure
In 2017 we published a [post](https://repl.it/site/blog/infinite-loops) on how we handle infinite loops at Repl.it. The post was very popular and went on to inspire similar work at [React.js](https://reactjs.org/blog/2017/12/15/improving-the-repository-infrastructure.html) and other projects. Our approach then was a mixture of code instrumentation and throttling. Throttling, however, turned out to be tricky. We used to throttle all output indiscriminately at a certain rate (20 messages / second), essentially taxing all output to reduce the chance of lock-up in the most underpowered of our clients. As our users' applications got more complex and ambitious it became apparent that this handicapped our development environment and restricted a potential for high output applications. Consider a reimplementation of [this very forum in the terminal](https://repl-talk-terminal.mat1.repl.run/) by @mat1 that needs to respond to mouse events and needs to (re)paint large portions of the screen: ![repl talk](https://storage.googleapis.com/replit/images/1556158002694_18f1502e4d1364b812dbd1c33412eebd.gi) Another complication was the introduction of Multiplayer: Now every program had multiple clients receiving output and sending input. So how do you build a system that works well for fast clients and degrades gracefully for slow clients? ## Enter Backpressure To understand [backpressure](https://medium.com/@jayphelps/backpressure-explained-the-flow-of-data-through-software-2350b3e77ce7) consider a scenario where you have a *producer* sending data to a *consumer* for processing. Often times the consumer is slower than the producer and might get flooded with messages before getting a chance at processing. At which point the consumer typically crashes. Backpressure is the mechanism in which the consumer tells the producer to slow the heck down! ![1_ZQWlVVyCANAmgUKJU9xUlw](https://storage.googleapis.com/replit/images/1556156478402_aa47eb6c600c9ea15bffe3ecf388fd79.gi) [*Backpressure explained — the flow of data through software*](https://medium.com/@jayphelps/backpressure-explained-the-flow-of-data-through-software-2350b3e77ce7) In our case the *producer* is the your program and the *consumer* is your browser. If your program had an infinite loop with a `print` in it, it will be sending data at a rate which your browser will normally crash. However, with backpressure we made it so that your program will blocked until the write goes all the way from the container, through our servers, network, your router, browser and to your terminal! That way your program writes at the perfect speed for you. But this presents a new problem -- what if you want to interact with your program by providing keyboard or mouse input? If it's blocked then it can't handle your input. Enter bursts: ## Bursts Bursts are periods for which the program can write freely without being constrained by the consumer. Every program starts out with a burst so that the initial set of output gets sent out to the client. Additional bursts happen with input. Every time you interact with your application you put it into burst mode so that it can catch up and be able to handle your input. That way interactive programs remains interactive. ## Multiplayer Now imagine coding with a group friends and one of them has a wooden laptop that can barely handle much output. At first the program will slow down to accommodate said friend. But say your friend's computer crashes and never processes any output ever -- what should we do? Sadly, we have to sacrifice the one to save the many: Simply disconnect your friend with the wooden computer. ![Computer-art](https://storage.googleapis.com/replit/images/1556157842232_fbef800320288e9e889cbc45256cef53.jpe) *Your friend's computer.* ## Try it ```python while True: print("hello world") ``` https://repl.it/@amasad/hello-forever ![while](https://storage.googleapis.com/replit/images/1556158126388_426c84e460d4d320a7f16afbb6f94e09.gi)
6
posted by amasad (1177) 29 days ago
16
Recent Changes to JavaScript -> Node.js
# Recent Changes to JavaScript -> NodeJS We recently made a change that redirected new JavaScript repls to create Node.js repls instead. We recognize that this behavior may come as a surprise, and may cause some frustration when using Repl.it with JavaScript. In this post, we'd like to provide our reasons for making this change, and give workarounds for those who require Browser JavaScript for their work. At Repl.it, we strive to provide the best experience for our users. To a beginner learning JavaScript, there may not be a big difference between using JavaScript and Node.js, as far as the language itself goes. However, on Repl.it, there are a few key features that make using Node.js the preferred environment: 1. **Package Support**: Node.js supports npm package searching and installing on the fly. You can search for any package and add it to your project, generating a `package.json` file for you, where you can then import it into your program. More on that in our [packager](/site/blog/packager) announcement. 2. **Consistency**: When using our Browser JavaScript repl, it uses whatever flavor of JavaScript your browser is using. This means that a Browser JS repl run on one machine may not run on a different machine, or it may behave differently. However, with Node.js repls, since it runs on a VM in the cloud, behavior is guaranteed to be consistent across browsers and programming sessions. Furthermore, you can safely share it with others, knowing that their experience will be identical to yours. 3. **File Management**: Node.js repls allow for users to create files and folders and interact with them, whereas browser JavaScript repls don't. This allows for more versatility in the programs you create, and for more growth in your learning. 4. **Infinite Loop Protection**: Finally, if you accidentally write an infinite loop (we've all been there), your browser won't be locked up, since the code is not running on your machine. So what happens if you need the web browser API, or if you need to test JavaScript that will run in the browser? You can create [HTML repls](/languages/html) to achieve that. The added benefit of using HTML repls is that you can search and import packages such as jquery, lodash, or moment.js, and then test out those functions within your script.js file. You still have a repl to interact with in the console tab. One thing you might miss from the JavaScript REPL is the `prompt` API. While we know that `prompt` is convenient, it's considered an antiquated API and its use in modern web development is generally frowned upon. If you'd like to do I/O in the node.js REPL you can do so using the `readline-sync` package which we pre-include in our Node.js image. You can try an example here: https://repl.it/@timmy_i_chen/readline-sync-demo We made this change because we believe it will be beneficial to Repl.it users, both new and old. We welcome any feedback in the comments below, and we look forward to working with you in the future to create awesome projects.
8
posted by timmy_i_chen (869) 4 months ago
16
Weekly Repl Highlight #2
Welcome back to our weekly repl highlights! This week we had a ton of amazing projects. At the start of the week, we received a great tutorial. At first, we weren't completely sure if we would include tutorials in the list, but after getting a second, amazing one, we just *had* too. Now, with our honorable mentions. @Babbel [This is a great turtle project, which if you increase the speed and wait, great art is formed!](https://repl.it/talk/share/2D-Particle-Painter/6528) @ericqweinstein [This tutorial is fantastic, and we're so glad this person decided to share it! If only they posted this *before* our make a language code jam :D](https://repl.it/talk/announcements/LISP-Tutorial-Write-a-Language-with-JavaScript/6566) @MikeShi42 [Made an AMAZING artificial intelligence tutorial, because who doesn't want to raise a machine?](https://repl.it/talk/announcements/From-Scratch-AI-Balancing-Act-in-50-Lines-of-Python/6586) @Joshua18 [A while back, a "cattle trade" game was made, which ended up being a hit. This appears to be it's successor, and it really is fun!](https://repl.it/talk/share/Oil-trading-stimulation/6687) @DJWang [This is our second turtle project, but it doesn't feel like it! It's a great game, play it with all your friends!](https://repl.it/talk/share/Eating-machine-2-Players/6767) @SagaciousPan [Text Adventures are always fun, and this is no exception! My only complaint is that it isn't longer :P](https://repl.it/talk/share/Text_Adventure_Version_02/6769) Finally, the winner is..... @Battlesquid [They created this amazing game, jump of walls, and mess around. Once multiplayer is added, it will be a blast!](https://repl.it/talk/share/BOOST/6597) Thank you to everyone that's on this list, and really everyone that posts their repls. It's so much fun looking at everyone's projects. Keep posting your awesome repls, and I'll see you all next week!
0
posted by 21natzil (596) 8 months ago
🏆GAME JAM WINNERS INSIDE 🏆
## After a long wait, we’re finally ready to announce the winners of our inaugural Repl.it Game Jam! Without further adieu… the winner of 1BTC—which as of Monday, April 29th, 2019, is valued at 5,158.14 U.S. dollars—is ... 🥁🥁🥁🥁 ## @ggzor and @MarisolH’s [SceneMachine] (https://repl.it/talk/challenge/SceneMachine-Drag-configure-and-shoot-SVG-2D-Physics-Game/13329)! ![](https://newsletter-images--timmy-i-chen.repl.co/044/scenemachine.gif) SceneMachine is a 2D physics game made with SVG graphics. The goal is to find out what happened to planet New Sphene’s colors (and eventually restore them). ** What the judges liked most about SceneMachine: ** * Creative storyline * Easy, fun, and elaborate game play * Clean, polished UI * Clear instructions ## Here are our runner ups… ![](https://newsletter-images--timmy-i-chen.repl.co/044/isekai.png) *Best Individual Game:* [CryptoStory:Isekai, Action Adventure game using Phaser CE] (https://repl.it/talk/challenge/CryptoStoryIsekai-Action-Adventure-game-using-Phaser-CE/13298) ![](https://newsletter-images--timmy-i-chen.repl.co/044/zanderian.png) *Best Group Game:* [Zanderian Prince Simulator 2020] (https://repl.it/talk/challenge/Zanderian-Prince-Simulator-2020/13352) ![](https://newsletter-images--timmy-i-chen.repl.co/044/type.png) *Best Storyline:* [Type] (https://repl.it/talk/challenge/Type-An-Adventure-Story-Game-based-on-your-Typing-Skills/13180) ![](https://newsletter-images--timmy-i-chen.repl.co/044/priceofadventure.png) *Best Graphics:* [The Price of Adventure]( https://repl.it/talk/challenge/The-Price-of-Adventure-Game-Jam/12701) ![](https://newsletter-images--timmy-i-chen.repl.co/044/fishing.png) *Most Community Votes:* [The Fishing Game](https://repl.it/talk/challenge/The-Fishing-Game/12016) Winners will be notified via email with more info on their prizes. 😊 ## Check out our full game gallery [here](https://gamejam2019.repl.co). ------- Special thank you to [Satoshi's Treasure](https://satoshistreasure.xyz) for sponsoring the game jam. We wouldn't have been able to give out such a generous prize package without them!
71
posted by katyadee (437) 24 days ago
15
Repl Talk notifications are here
We just added Repl Talk notifications. Instead of digging through your emails you can now see your notifications at https://repl.it/notifications. In the coming weeks, we'll make notifications even more useful by adding additional context (like the details of the related post). Let us know what you think and share any feedback/suggestions.
9
posted by moudy (50) 2 months ago
15
Two new languages: Nim and Crystal
Continuing on our language-adding binge, today we're excited to announce two new languages: [Nim](https://nim-lang.org/) and [Crystal](https://crystal-lang.org/)! ## Nim Nim is a statically-typed language tailored for systems programming. It's fast but it also looks good and is easy to use. Furthermore, it's cross-platform and sports multiple compile targets (including JavaScript). [Give it a spin](/languages/nim)! ![nim](https://storage.googleapis.com/replit/images/1552684457928_c22784535191bb2bf65f97c503395389.gi) ## Crystal Crystal plays on the same theme as Nim -- a statically-typed language with a pleasant syntax inspired by Ruby. Additionally, Crystal early catches bugs like null references and sports a powerful macro system. [Give it a spin](/languages/crystal)! ![crystal](https://storage.googleapis.com/replit/images/1552684613897_f4793eefe5ee371786cbff80f97a1fd0.gi)
14
posted by amasad (1177) 2 months ago
15
Running cron jobs with repl.it 🤖 🕒
Have any of you ever tried to run cron jobs, or scheduled tasks with replit? Since repls sleep, you can't use inbuilt timer functions - meaning you'd have to use something like [Uptime Robot](https://uptimerobot.com) to ping your site every `x` minutes. But - Uptime Robot always repeatedly pings your website, even if you only want to schedule a one time task, and you have to manually add a url to ping on their website. Introducing [**ping**](https://ping.4ty2.fun) ✨✨✨ ping lets you schedule tasks using a simple get request. It's as simple as this 👇 ``` https://ping.4ty2.fun/?time=3600&url=https://google.com ``` Send a request there, and 1 hour (`3600` seconds) after this request is sent, `https://google.com` will recieve a `get` request from `https://ping.4ty2.fun`. Check out more details on the github [repo](https://github.com/jajoosam/ping) - and let me know if you have any questions. Also - would y'all like to see a tutorial on this, along with a full example app?
4
posted by jajoosam (472) 3 months ago