Among Us Replit Online

0 views
Skip to first unread message
Message has been deleted

Ingelore Clason

unread,
Jul 13, 2024, 5:25:31 PM7/13/24
to tyczpothinca

I would love to be able to give a quiz or test type assignment in replit without my students going into other assignments, the internet, chatgpt, their personal replits, etc. My school district has already purchased lockdown browser and it is available on all student devices. student devices are Apple laptops.

Could you not use the safe exam browser and whitelist the replit domain? Would give access to replit but prevent others. Not sure if you would be able to prevent them from accessing their own previous replits or any teams coursework though

among us replit online


Descargar https://mciun.com/2yOuxT



We use brightspace in our district and lockdown browser. In the lockdown settings I whitelist a simple online IDE (Online Python Compiler (Interpreter)) and have them code in there. Then they need to copy their code and paste it into the brightspace written response area for submission.

I decided to try some of my older projects that worked previously, and they now do the same thing. I tried Sudoku solver, metricimpconverter, mochachai, issue tracker, and each of those do the same thing now, come up, pass tests, then the page hangs with the replit page, although any zombie browser tests fail as the timeouts now prevent them from working.

But I did go back to the older failing projects, and tried the .keepOpen() and sadly it did not help. My application still froze even with that added. But confirmed again that adding an after statement with an open-ended get request does bring your project back online.

Theoretically sometimes the .end of the chai tests is stopping the server from listening for additional request. The after runs when your tests are complete and the open-ended request will keep chai from disconnecting your app afterward. Then you can submit to FCC without issue.

Hi! Thanks for bringing this up. I had the same issue. Both in Quality Assurance Issue Tracker and Personal Library. I found a way to use keepOpen(). Before all the tests we can create a superagent object bound to the server instance, using keepOpen() and put it in a variable (e.g. agent), which will be used in each test instead of chai.request(server). Here is a code snippet from a test file:

UPDATE: The two example repls linked below that I created are currently broken thanks to the forced automated update to Nix and not worth trying to fix at this point (I have nothing against Nix though). Quite frankly, Replit has become too slow, unstable, and poorly documented for me to justify using it anymore.

While the Replit platform is pretty impressive, I went through quite a long learning curve in trying to figure out how to get all of the pieces I needed to use installed, configured, and running. In the end, I set up two separate repls using examples pulled right out of the book.

The first was for a front-end-only application and was pretty straightforward to get set up. But the second application was a full-stack example and proved to be a bit more challenging to get configured. Since it wasn't immediately obvious how to run multiple servers in a single Replit repl, I thought I'd document my solution here. While my development stack may be a bit different than most, the approach here would still apply to many situations.

Replit is kind of unique in the online development tool space since it provides you with many more options and more control over how you use it compared to most others I've seen. You can get it working with just about every programming language out there, and for the more common ones, they have templates to get you started quickly.

To create a new Replit project (or repl), you select an appropriate template like Python, TypeScript, Rust, etc., and then start adding your source files. If none of the available Replit templates are to your liking, you can also start with a Nix template that is essentially a blank slate to start building from.

One of the main features of Replit is that repls created on that platform are easily forked. This feature works much the same way as a public repository on GitHub might be forked. Except that instead of just getting a copy of the source code, you are also getting a copy of the entire development environment that was created for it. If your repl is public, even though your code is read-only to others, anyone can view it, fork it, and run it.

A typical full-stack web application will have a public-facing front-end web server and a back-end application server that is used by and/or proxied by the front-end server. In my case, I was using Flask as a back-end server that had a very simple REST API, and then I had the Parcel bundler development proxy-server for the front-end.

In addition to the servers, I also had a requirement to install and run a Python-to-JavaScript transpiler that is used in the build process. This transpiler worked in conjunction with the Parcel bundler I was using.

I also created a shell script for starting the build process that will first check to make sure the required dependencies have been installed. If the dependencies are not installed, the build script will automatically run the setup script before running the npm start script that starts the development server.

If you know what you are looking for and where to look, the key to getting multiple servers working at the same time is in the Replit documentation. But even then, what is provided there isn't completely clear and kind of sidesteps this particular issue a bit.

An important key to getting the multi-server repl to work is understanding that the server started using a listening address of 0.0.0.0 becomes the public-facing web server, and starting another server listening on 127.0.0.1 keeps that server private.

When 0.0.0.0 is used, Replit accepts public requests to that server via one of its own publicly accessible IP addresses. In addition to that, it also automatically enables SSL. Regardless of what port your server is listening on, the public-facing server will be accessed via the standard SSL port (443). What this means is that, while you can use multiple ports for your internal servers, the public-facing server only accepts requests via the standard HTTPS port.

Now that we have the back-end/front-end ports figured out, the next issue is how do you run both servers simultaneously? Since both servers are blocking, you can't just chain start up commands, as the second server start command wouldn't execute until the first one ended.

One option is to fork the first command and run it in the background, allowing the second one to execute. While this works, you then don't have a convenient way of stopping the first command once you don't need it anymore.

Using npm-run-all, the npm start script then just calls two other scripts in parallel. By using the -r or --race option, the process started by each of those scripts will be shut down when one of the other processes exits.

To run your application on Replit, there is a big shiny green Run button at the top of the Replit workspace. What this button actually does is defined by the Replit template used to create the repl, but it can also be customized in the .replit file.

While it could make sense to have this button start up your development server, it may not be optimal. Because of the way Replit works when someone else wants to view your application, they essentially click that same button. If your build process takes a while, they may give up on your application starting up before the build process finishes.

So to facilitate faster startups in this situation, I prefer to just serve up pre-built application files directly with Flask when the Run button is clicked, and perform the build process and running of the dev server from the command line instead.

However, that means that the Flask server must be started up listening on different ports depending on if it is acting as the full-stack server, or if it's only acting as the back-end server. To achieve this, I added a conditional startup for Flask that is dependent on the existence of a command-line argument dev when it is started.

One general tip I can give for using Replit is to not fight their framework. Replit is opinionated in some of the tools they have pre-installed, and you are better off using what they have rather than ignoring them and just using what you may already be used to.

For example, in my case, I would typically set up a Python virtual environment using venv, and then pip install any Python dependencies I needed. When I first tried that on Replit, the results were inconsistent at best. When I went ahead and used the pre-installed Poetry package manager instead, everything went a lot smoother.

While setting up a full-stack application on Replit isn't too difficult, figuring out exactly what needs to be done may not be immediately apparent. Hopefully, my example here will give you some hints on how you might approach it.

I am reaching out to this knowledgeable community for two main reasons. Firstly, to understand if there is a feasible way to continue hosting my Discord bots without incurring these additional charges. Secondly, to gain clarity on whether my current subscription already includes the necessary services to keep my bots operational.

There currently is not a way to use your Core plan to get a Reserved VM deployment, but it is being talked about among staff. But right now you will have to pay the extra fees if you want your bots online.

Thanks for the reply. I am curious, does my current plan come with any way keep the bots alive currently? like, if its under a certain amount of computing, perhaps its no additional cost above what my core plan is?

Describe your feature request
It would be nice to be able to embedd my own video from lets say a online tutorial and be able to code a long with the video tutorial inside of the replit like replit 100 days of code.

yea thats true what im doing mosly of the time or using two screens but i want to use the space for other stuff at the same time and while i was testing the replit 100 days of code i saw this feature and like it.

d3342ee215
Reply all
Reply to author
Forward
0 new messages