Online Music Hackathon

First Prize: $5000

Ends on Jul 22:
00
Days
00
Hours
00
Mins
00
Secs
Posts
Rules for Posting - Read me!
Some rules and guidelines to keep in mind as you share your great work on our boards: 1 - Be kind and courteous to others 2 - Make sure that any feedback you provide is constructive. 3 - Outside links are allowed, but you must provide the source. Ideally, things that you post will have been created on Repl.it. 4 - Avoid posting overly promotional material - the focus is, and always will be, a programming, learning, and collaborative community. :) 5 - Don't spam! Keep things SFW (Safe For Work). We may revoke your access to these boards if you are found to be in violation of any of these rules. Feel free to ask clarifying questions. Last updated 7/10/18 12:09 PST
63
posted to Share by timmy_i_chen (934) 1 year ago
🚨THE THEME IS MUSIC🚨: WIN $5,000! We're having another competition!
### Friends, foes, loyal Replers, Boy do I have some news for y'all! On July 1st, we're kicking off another competition and the stakes are higher than ever. ![richrichrich](https://storage.googleapis.com/replit/images/1561408399112_514da1dfbb25d3bc66b26fb7e7430790.gif) **Types of programs accepted:** *Any.* **Theme:** MUSIC! **Rules:** As always, *must* be original content & MUST be created *and* hosted on Repl.it **Prizes:** $5,000, $2,500, and $1,000 **Dates:** July 1 @ 00:00 PST to July 21 @ 00:00 PST **Judge:** Tom Lehman, the CEO of Genius ## To submit, all you have to do is share your repl on [Challenge](https://repl.it/talk/challenge)! Check out [our FAQ](https://repl.it/talk/announcements/MUSIC-HACKATHON-FAQ/16359) if anything is unclear or you have any questions. And feel free to ask anything you need there, too!
153
posted to Challenge by katyadee (835) 26 days ago
🐶Introduce yourself! 🐶
Hi everyone! ![waving](https://storage.googleapis.com/replit/images/1561489787610_61c528ae0267ed2696f0c625ff66db6c.gif) 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
61
posted to Announcements by katyadee (835) 26 days ago
5
Influxion - A Rhythmic Platformer
#### Project by @LehuyH and @raghavm --- # Influxion - A Rhythm Driven Platformer The only skill you need is your knowledge of a song! --- #### Links: - Click [HERE](https://influxionfinal.raghavm.repl.co/) to play Influxion! - Click [HERE](https://repl.it/@raghavm/InfluxionFinal) to view the source REPL! - Click [HERE](https://github.com/mrcool4000/influxion-rhythm-game) to view the project on GitHub! --- ### What Is Influxion? To fit with the theme of the music jam (music if that wasn't obvious), we built Influxion because we guessed that many of the other submissions would be music players, music builders, et cetera. We wanted our project to be different but fun to play/use nevertheless. **Influxion** blends the elements of a rhythm game into a less strict and more approachable platformer game. --- ### Game Structure/How-To-Play: - Influxion has **7 CDs (or levels)** built-in, along with many others created by players. - Each **CD** is divided into **2 parts**, the **platformer** and the **boss battle**. - The platformer is pretty straight forward, you hit **(SPACE)** to avoid crashing into **eighth notes**, and press **(X)** to attack **treble clefs**. - The boss battle is a bit more complex, and is only playable after the platformer is **completed**. - **The boss** is constantly moving around synced to the beat and your goal is to survive it or kill it. When the boss is hovered over the **left-most (red) bar**, you use the **(A)** key to hit the boss, for the **inner-left (blue) bar** use the **(S)** key, for the **inner-right (yellow) bar** use the **(D)** key, and for the **outer-right (green) bar**. --- ### Level Designer - You can build your own Influxion levels and upload them to our servers for anyone to play! - Just click **'MAKE A LEVEL'** from the homepage and type in a username. - All further instructions will be on the page itself. --- ### Further Notes: - All Influxion code was designed in **Repl.It**, and tested in **Google Chrome 75** on **Windows 10** - Influxion was designed to be played on a computer, and does not work on a phone. - As Influxion is an music-focused game, for optimal experience headphones are recommended. - Play Influxion in fullscreen, if your browser can do that. - **DISCLAIMER:** We are not responsible for copyright issues in community levels as those were not created by us. - If a song in a community level is explicit, racist, sexist, et cetera, please let us know thrugh a comment or on Discord (@RustyPotato#3472) through the [Repl.It server](https://repl.it/discord). --- ### Thanks a lot for playing Influxion! Upvotes and feedback are greatly appreciated. --- ### Screenshots: ![Electro Level](https://cdn.discordapp.com/attachments/543969485598490634/602274139251802112/unknown.png) ##### Songs used in the game (not counting community levels): - Main Screen Music - Wind by p00s - Tutorial = OneStop by David Yackley - Cityscape = Town by Nathan Grigg - TalkBox = TalkBox by [DJ Quads](https://twitter.com/djquads?lang=en) - Electro = Electro Cabello by [Kevin MacLeod](https://incompetech.com/) - Flares = Flares by [NIVIRO](https://www.youtube.com/channel/UCYsQBXpnkduQxGo3z1lstZw) - Paradise = Gangsta's Paradise by Jennifer Spengler - Skii = Skii by [Lil Scar X Iscopizza (Peninsula Records)](https://www.youtube.com/channel/UCrmVTYUv3BNQHllJyXrZtUg/) --- ##### Proof that we developed in repl.it: Although we used GitHub, we developed Influxion in multiple repls. We have them linked below (the links are in no specific order): - https://repl.it/@raghavm/InfluxionFinal - Final Revision - https://repl.it/@LehuyH/InfluxionFinal - https://repl.it/@LehuyH/FreshCookedRotation - https://repl.it/@LehuyH/SongJellyTheNeverEndingParadox - https://repl.it/@LehuyH/SongJellyEndgame-1 - https://repl.it/@LehuyH/SongJellyEndgame - https://repl.it/@LehuyH/UnconsciousFluffyCharactercode - https://repl.it/@LehuyH/UnlawfulFastMicrostation - https://repl.it/@LehuyH/AbandonedBetterComputergraphics - https://repl.it/@LehuyH/animejs-test - https://repl.it/@raghavm/SongJellyEndgameII-TheParadoxContinues-1 - https://repl.it/@raghavm/SongJellyEndgameII-TheParadoxContinues - https://repl.it/@raghavm/LumberingAggravatingPhysics - https://repl.it/@raghavm/SongJellyTheNeverEndingParadox-1 - https://repl.it/@raghavm/SongJellyTheNeverEndingParadox - https://repl.it/@raghavm/SongJellyEndgame
12
posted to Challenge by raghavm (21) 8 hours ago
7
Artificially Intelligent Audio Player
Simple , fast, highly intelligent and accurate. Any sound, song, theme, band, or artist. Mobile, BlueTooth and Gracenote capability for passenger mobile play, pause or amplification. This feature will work with proper browser configuration and won't be shared in this demonstration. This is the DESKTOP DEMO version. AI | Audio Player was coded in Python 3, Flask, CSS and HTML and uses a free Javascript counter. All coded on @repl.it by "B" at https://www.pcondemand.com ![kali2](https://storage.googleapis.com/replit/images/1563656003440_9933703b72e81c455947061950b27252.png)
13
posted to Challenge by BLyons (8) 1 day ago
7
Minecraft
all you have to do is play it go to how to play and read the instructions
88
posted to Share by duck132912 (13) 5 days ago
6
An App where you just click and make good-hearing music.
Well, me and my friend thought that this idea would be cool so we go ahead and make it. By me and and my friend I mean me and B0t. Part we do in this project: - Me: I develop the website, find music samples and add it to the site. - B0t: Styling and Designing the site. The idea of the site: Even if you have no absolute knowledge about Music you can still make good-hearing music. Version: 0.1 (I submitted this in case the development went wrong and we are late or something like that, this is just an early version of the site. Later I will add more.) Features of the app: - 15 One-shots - Simple Beats Creator ( even if you click random you will hear good stuff) - **Easter Egg comming!**, yes there is even a easter egg hidden inside the app. (plz don't look at the code if you want to find the easter egg cause it is not that well hidden. Day worked on the app: 2 days. Upcoming features: - Melody Samples - Bug fixes - Images to the pads Logs: - 20/7/2019 Submitted. Upside of the app: - Enable everyone to make good-hearing music - Simple UI - How to use guide. Downside: - Not that good looking for now, we are still working on stuff. ** List of known bugs ** - Well, the beats create sometimes don't make sounds, I am known of that cause my partner B0t have the same problem. But it is fixable by folk the app and run it through repl.it . I don't know what causes it but... If you want to checkout the app you can by using this link: https://drummer--joshhies.repl.co/ (**The melody samples doesn't work yet, yes I am still working on it.) Screenshots of the app: ![image](https://storage.googleapis.com/replit/images/1563583551831_1fd04db94644b8dbfb46b160dd6df68f.png) ![image](https://storage.googleapis.com/replit/images/1563583588915_bf133eb2f2d0432181733cf3775aa923.png)
9
posted to Challenge by joshhies (7) 1 day ago
7
Lil Tay simulator
# [Freestyle Rhyming Rap Lyrics Generator](https://Rap-lyrics--adrianhall.repl.co) The program will endlessly freestyle in a mildly amusing imitation of modern rap. It feels a little like a furious Lil Tay is texting you. ## [Viewing the project](https://Rap-lyrics--adrianhall.repl.co) Click [here](https://Rap-lyrics--adrianhall.repl.co) to view the repl with the backing music playing in the background – using a little audio hack inspired by what rediar did with his ode-to-joy chess program. If the music doesn't start up when the website loads, you can fix it by clearing the cache and cookies. On Chrome: right-click, click 'inspect' or 'inspect element' then go to the 'network tab'. Then reload the page, you should see a bunch of blue and green lines appear. Right click in that area, and choose 'clear browser cache' and 'clear browser cookies'. If you're on mobile, view the repl [here](https://rap-lyrics-generator.adrianhall.repl.run/) for a less cluttered experience. Heck, even if you're on a desktop it might be nice not having the code next to you. ## What is this? Because some modern rap is pretty much random at this point anyway :), I thought I'd save artists the trouble of thinking up lyrics. This program uses a generic mad libs algorithm (I bet there's a computer science name for that but I don't care) to generate random rhyming lyrics. It uses templates of lyric patterns, then fills them in with words – pretty simple in essence. It also sorts words into rhyming groups, so that it can end each line on a word that rhymes with the previous one. So far it generates rhyming couplets, but more complex patterns would be possible as well. The downside to creating more rhyming lines is that it's harder to think of the rhymes, especially for your poor computer who doesn't actually know how to pronounce words. What would happen is it would fall back on the rhymes that are easiest, or have pathetic repetition (eg rhyming 'duck' with 'duck' - not so impressive). ## Examples of use Some fun ones I've seen (explicit content): ``` you smash me like a hot robot now, I gotta go hit some pot your pot ain't shit, you're shit hell, my dope stash is legit you say you like me but you just want my bread I say bitch, your mom is my sled bitches think that I'm hardcore yo, don't try to smash my whore look, my moola is legit I gotta go hit some tits yo, ima hate on all your robots your yacht don't make you hot look, you're pretty much a store bitches give me that score I saw your mom last night at the goat store buying love ya see, my ass don't hit your glove they be digging my sweet trashy babe uh huh, you know you're cray-cray you try but you can't hit my grass uh huh, your mom is my ass ``` ## Tips/resources Play [this video](https://www.youtube.com/watch?v=tOnTPW1MTZ4) for background beats as my code transforms you into the next big shaq. I've migrated to HTML/CSS/JS for audio purposes but the project is programmed in python. To view the code, click [here](https://repl.it/@AdrianHall/Rap-Lyrics-Generator).
6
posted to Challenge by AdrianHall (49) 2 days ago
2
Bouncy Beats
Listen to the sweet sounds of physics by throwing, bouncing or rolling balls to make some sick robo beats! The sound ended up being the hardest part, and to be honest, with so many balls the sounds kind of blend together into a horrible mess (oops) so feel free to set the sound duration to 0 and play around with it in silence, it's still music to the eyes... lol. This is my first challenge and website! I have been learning c++ at my high school and saw this challenge and decided to learn a little HTML, CSS, and JS. It took many hours but it was really fun and I learned a lot. There are a few bugs but that's what happens on a first try. If you have any tips or suggestions I would love to hear them! Have fun creating some bouncy beats!!! :D
1
posted to Challenge by WilliamShuppert (1) 3 hours ago
16
Customising repl.it syntax highlighting with repl.it-color
*Note: repl.it-color is made by myself, not repl.it. Also, it doesn't work on phones and possibly tablets because repl.it uses the Ace editor on phones rather than Monaco.* # Greetings! Currently, the only options that `repl.it` gives for personalising your syntax highlighting is a switch between default light and dark themes. I decided to write a very basic Chrome extension that allows customisation of the `repl.it` syntax highlighting. The result is `repl.it-color`. ![image](https://storage.googleapis.com/replit/images/1563185080182_94ef635bc494a19a8b7a5ddf61b1115a.png) repl.it-color allows you to change the syntax highlighting completely on `repl.it`. ## Installation In order to put a Chrome extension on the Chrome Web Store, you need to pay. Therefore, this extension is not available on the web store. This means a couple of extra steps need to be taken. * 1 - Go to the [github repository](https://github.com/ArchieMaclean/repl.it-color). * 2 - Click on `Clone or Download` then `Download ZIP`. * 3 - Extract the ZIP file you downloaded into a folder (try right clicking and clicking `Extract` - if that doesn't work, look it up on Google for your Operating System) * 4 - Go to `chrome://extensions` in Chrome, and enable `Developer Mode` in the top right hand corner. * 5 - Click `Load Unpacked` and select the folder you unzipped in step 3. * 6 - The extension is now ready to use! **Make sure you enable Dark Theme in your repl.it editor - if you like light theme, you can change the settings via **`repl.it-color`** later. However, dark theme needs to be enabled in order for the syntax highlight customisation to work.** ## Usage Once you have installed `repl.it-color`, you should see that the editor has turned into a rather vile color. ![image](https://storage.googleapis.com/replit/images/1563185702887_65ff08d44e3a2fcbf2f5cdb3f86dea28.png) To change what colors you want everything to be, you can click on the small `repl.it-color` icon in the top right hand corner in Chrome, next to your extensions, and select `Options`. This should open a new tab with which you can edit your color scheme. ![image](https://storage.googleapis.com/replit/images/1563185790392_ddd37eeb2a434e89d848040a628e0ca8.png) Now you can fiddle around with the colors to get `repl.it` looking exactly how you would like. ## Thank you Thank you for checking out `repl.it-color` - please let me know if you like it or if there are any things you would like me to change. Please upvote to let me know if you like it, and help other people find it. If I do make any changes, I will post them here. You will need to re-download the repository to update (if you want to update). Thanks :) ### Another Option I just found out that a while ago, @minx28 made a [tutorial](https://repl.it/talk/learn/How-to-Make-a-Custom-Code-Theme-for-Replit/9500) on using CSS injection to edit syntax themes. Check that out too!
11
posted to Announcements by ArchieMaclean (523) 6 days ago
46
🎵 📦 Music Box Editor 📦 🎵
Simple editor for creating music box melodies with an animated music box that "plays" them for you. Very basic: Just click on the diamonds to generate a note and press play. There are some featured melodies included. * As a bonus I have added a database - it's a separated repl because I don't want the player to load longer. My official submission is the Music_Box_Editor, the DB is just a storage for notes that I can't finds space for in the actual application. * The note sounds are from freesound.org. Animations are created by me in After Effects and exported as SVG animation which is then played in the browser with the lottie player. Make sure you tune-up the box when first loading to cache the sounds for better first preview. Features: -edit notes -play speeds -save notes and load notes -generate random notes -tuning up the music box -copy notes from sheet and auto-paste on next sheet -add new block "+" and delete block "-" or press "++" to generate N blocks from input and "clear" to delete all. -move notes with arrows -toggle hold notes -piece fast preview and listen to sound only -two preview modes - show one block at a time or all blocks being visible while playing -mixing notes - combines two or more pieces together. -build-in tunes: Ode of Joy, Twinkle Twinkle Little Star, Star Wars Theme, Jurassic Park Theme, Elf Song. Bonus features: --save notes to a database https://musicboxdb-2--anthony-tonev.repl.co/ My idea was to write an app that is simple enough to be beginner friendly so anyone can learn to write simple music peaces without knowing complex note notations and also have an open source note sharing system where users build melodies on top off or inspired by other users melodies. Works best on desktop with chrome in full screen repl view. ![image](https://storage.googleapis.com/replit/images/1563100885459_aa7a1d93fd679e08e575b1f426b8e218.png) I've added a guide that explains most of the stuff: https://docs.google.com/document/d/1VuNxjiUfA3SQPqONgDC-7V46lHGHZw3rfcvPiS7jNRI/edit?usp=sharing Here are some gifs that explain the rest of the stuff: ![addredkeys](https://storage.googleapis.com/replit/images/1563641646601_b87d39012665cb528e55d8c7284f72d0.gif) ![adding blocks](https://storage.googleapis.com/replit/images/1563641658391_cd7cfbee700b65a7aa7bc7fdfc720c59.gif) ![copy](https://storage.googleapis.com/replit/images/1563641656785_ac25a17723152706cc5ae7c4d578c6a8.gif) ![matrixSwap](https://storage.googleapis.com/replit/images/1563641676977_85d78c773b485e1db080268d3f9aab13.gif) ![mixing](https://storage.googleapis.com/replit/images/1563641700209_44873f012345a8562bb351e709375a68.gif) ![topArrow](https://storage.googleapis.com/replit/images/1563641701068_d44f2b474ed0b8b0d628f113da70afbf.gif) ![topArrowShow](https://storage.googleapis.com/replit/images/1563641711246_e9881f9287328f4d301be115b7daadc7.gif)
87
posted to Challenge by Anthony_Tonev (48) 18 days ago
2
I cloned this repo, what's next?
Hello! I cloned this repo, but now I'm stuck. The readme assumes I will be installing Node.js locally, though I'd like to make it work here in Repl.it. I've tried several things that seem to make sense but it does not seem to produce the demo app shown in the README. Help! Thanks.
9
posted to Ask by ryantmurphy (1) 2 days ago
10
Repl.it CodeJam Event #7
Welcome to the 7th Repl.it Code Jam! Join our two day coding challenge to code about a topic that will be announced. From beginners to advanced coders, our CodeJam fits every experience level. If you need help, ideas, or anything else you can request it on the Discord server or on Repl.it Talk. Have you ever wanted to be famous on Repl.it? The lucky winners will get a special role & emoji on the Discord server and might be featured on the newsletter. In honor of our first CodeJam, we will hold the CodeJam on the same days the competition was last year. Sign up on the forum and enter the Discord server to join this phenomenal opportunity that you will never want to miss. Good Luck! EVENT DETAILS: Date: Friday August 2nd, 6:00pm EDT to Sunday August 4th, 6:00pm EDT Length: 48 hours Sign Up Form: https://forms.gle/oksDz5RbBEKytPRK6 Rules: https://docs.google.com/document/d/1zZ_LMmgAsm9slnkrVB5kdebwFUURR9GrpvTaA9tUW5k/edit?usp=sharing Discord Server: https://repl.it/discord
4
posted to Announcements by Mosrod (262) 4 days ago
answered
1
switch statement
Create a property called testScore of type Int. Write a switch statement that will print out a grade based on the student's score. Score Criteria A+: 97%-100% A: 93%-96% A-: 90%-92% B+: 87%-89% B: 83%-86% B-: 80%-82% C+: 77%-79% C: 73%-76% C-: 70%-72% D+: 67%-69% D: 63%-66% D: 60%-62% F: 0%-59% let testScore = 90...1 switch testScore { case 0...59: print("grade F") case 60...69: print("grade D && D+") case 70...79: print("grade C && C+") case 80...89: print("grade B && B+") case 90...100: print("grade A && A+") default: print("All student's testScore") }
5
posted to Ask by Triecie77 (0) 14 hours ago
2
JS (+HTML) - how to save (leaderboard) data - for music jam!
Hi everyone, I'm making a game for the repl.it music jam, called [Name That Tune](https://Name-that-tune--thomass1.repl.co). The code is [here](https://repl.it/@ThomasS1/Name-that-tune). I've made the game itself (although I need to add lots more tunes!), but I'm now looking for a way to have a leaderboard. I've made the leaderboard HTML itself (`index.html` lines 67-121) and the JS functions to put the data into the table (`script.js` lines 190-254), but I need a way to save the data itself. I've tried various different approaches: ##### Using jsonstore.io Jsonstore is a brilliant online data storage website, but as far as I can tell you need node.js to be able to interact with it. See [TheDrone7's post about his node.js jsonstore extension](https://repl.it/talk/share/Dont-ever-lose-your-data-again-with-jsonstoreio-JS-Edition/10999). I don't know how to/if you can use node.js with an HTML/CSS/JS repl. I even tried using python, but calling the functions from JS proved an absolute pain. As I expected. ##### Other ways? Are there ways to save data which can be changed in JS without using external things like jsonstore? I looked into json files and other stuff, but as you can probably tell, I'm a bit out of my depth. I'm a beginner with JS and thought the music jam would be a fun way to learn some more! Thanks in advance for any help!
14
posted to Ask by ThomasS1 (35) 3 days ago
10
💡 UI Repl
> #### The real problem with the interface is that it is an interface. **– Don Norman** I've been thinking about how to improve on the UX of traditional forms. For users, they can be confusing and overwhelming to use. For engineers, they can become tedious to build and maintain. Plus, it's hard to get the design just right in the first place. I ended up with a UX that feels a lot like being in a terminal session but more visual and less intimidating. I'm calling the pattern "UI Repl" (in my head). I think this approach has potential in a number of ways... - gradually building the UI as info is being entered makes the UI less overwhelming than seeing it all at once - you can still scroll back and edit previous fields so the UX isn't too different one some data is entered - it's flexible. more complex UI elements can be used when needed - scales down well for small screens - easy to prototype new ideas with - potential for console-based power-user features - are easy to group and split apart when they are too small/big I think a good use for a "UI Repl" is a discrete task that has multiple steps. I like the spacial metaphor of progressing downward with the UI as you work through the steps. Also, creating this timeline of edits clearly communicates to the user the effects of their interactions. This seems like a well-explored UX pattern but most of what I could find is either too much like a terminal or to too much like a digital assistant (where you are mainly in the chat UI). I think there could be a good middle ground that is friendlier than a terminal but also avoids the uncanny valley of digital assistants. I'm curious what others think (try it on your 📱phone!).
4
posted to Share by moudy (74) 4 days ago
7
Play chess and listen to music
Listen to the extremely relaxing and very quiet "ode to joy" while playing chess. Try playing chess while the chorus starts screaming. # Chess Note Uses regular (FIDE) notation works like this: piece and where the piece went . For example: * Pond from e2 to e4 is e4 * Queen to h5 Qh5 and so on! It now works, thanks for your support! *this project was done independently and works*
15
posted to Challenge by rediar (65) 6 days ago
13
🧘‍♂️ Hover Cards!🧘‍♀️
You can now hover over a username to display a card that shows more info about the user. It's a summary of their profile so you can see things like name, bio, etc. How useful is this? Is there any other information you'd like to see surfaced on the cards? ![hcs](https://storage.googleapis.com/replit/images/1563206414065_f77a74bb5d4b406d2d96d0a8cc1253b5.gif)
3
posted to Announcements by moudy (74) 6 days ago
8
DEV SPOTLIGHT #09: Application is more important than just knowing facts.
From Hilton Head, South Carolina, I bid you all good morning and/or good evening, wherever you are in this great land of ours—from the Tahitian and Hawaiian Islands in the west, nestled in the warm trade winds of the Pacific, eastward to Caribbean and the U.S. Virgin Islands, with her own soft winds, south into South America, north all the way to the Pole, and of course hello to all our friends in the Antarctic, at McMurdough. 👋 Today we have a first time caller, long time listener, resident Javascript expert and intern, @eankeen. ![Edwin](https://storage.googleapis.com/replit/images/1563204459905_27993d27fab513b585581fb2e78f4d79.png) **@katyadee:** Hey friend, happy to have you on the line. Let's start with an introduction. **@eankeen:** I’m Edwin and I really like doing programming. I started maybe one and a half years ago—junior year of high school. That was sort of the time where I found Repl.it. I had found it before, but it was really junior year when I started seriously using it. **@katyadee:** How’d you find Repl.it? **@eankeen:** It was actually in my bookmarks, and it was bookmarked maybe three years ago because I had been doing a computer science club with my high school, and when I was researching how to start that club I found Repl.it because it was good for online coding. The club never materialized, but then I looked at my bookmarks a few years later and I realized, hey, I kind of remember this, and then I started using it. I really like Repl.it because I can use it to experiment, usually things that are only 20 or 30 lines of code. **@katyadee:** Do you find you’re testing things on a lot on Repl.it? **@eankeen:** Yeah—and I categorize them into what I’m testing. If I keep them in my archive and if need it again or forget how I did something, I go back and look for it. **@katyadee:** So what kind of things will you test? **@eankeen:** Javascript APIs and node.js, mostly. **@katyadee:** It seems like you’re definitely a front end guy taking a look at your repls. Any plans to branch out? **@eankeen:** I really love front end, I really like creating user interfaces, I think that’s really fun—I leverage Javascript to do that. I realize if I want to become better at programming, I definitely need to branch out… I’m slowly starting to add other languages. **@katyadee:** Do you have an interest in design at all? **@eankeen:** I would say I do, but it’s hard, because I haven’t done enough of it. I don’t have the same knowledge of it. But I love thinking about UX… I love transitions. It’s kind of a fun challenge. I only actually do design outside of that when I absolutely need to right now. ## On Teaching & Learning ![Screen Shot 2019-07-15 at 8.28.10 AM](https://storage.googleapis.com/replit/images/1563204545607_0f17632fd1df4b7b7da8c522d27f10ef.png) **@katyadee:** Let’s pivot a little bit. I’ve noticed when it comes to the things you share with our community, you post a lot more tutorials than you do projects. What motivates you to teach other people? **@eankeen:** Yeah so, I think it’s really cool to teach people. Sometimes I’ll check Twitter and noticed someone’s benefitted from my tutorial. Otherwise, a lot of the projects I’m building aren’t cool enough to share. But I really get hyped about being able to help people learn something new. **@katyadee:** How do you decide what you’re going to write your tutorials about? **@eankeen:** It’s usually just things I’m excited to learn about myself. **@katyadee:** Oh—wait—that’s really neat. Are you learning these concepts as you’re writing them? **@eankeen:** It depends. For Babylon.js, for example, I knew how to do it—but I learned how to use Intersection Observers while writing the tutorial. **@katyadee:** So, you’re like, “Okay, I want to learn this, I’m going to write about it”? That’s amazing, especially having seen the quality and how much mileage people get out of it. **@eankeen:** It’s kind of cool once you learn something like that, too. **@katyadee:** Would you say that’s the main way you learn new skills? By writing about them? **@eankeen:** That’s definitely one way—it’s either writing a tutorial or building a project. **@katyadee:** Do you learn other skills the same way? Like, if you’re learning something new at school? **@eankeen:** It’s a bit easier with programming… well, I guess I do it for school. I’ll do problems then explain them to myself later while studying. **@katyadee:** That’s really cool. I remember being taught a similar method in AP American History, which is why I asked. I also wanted to ask—I feel like the writing in your tutorials is just good writing. Is that something you think about when you’re creating these? **@eankeen:** I don’t think I’m a naturally good writer, no, haha. I kind of observed that other people who write blogs and tutorials first. I picked out the parts I liked and then I tried to copy structures that I understood. I actually don’t think I’m very good with English, like I don’t know what a prepositional phrase is… I’m not good at that kind of thing. But I tried to pick up patterns with what I thought was working. I try to be casual but succinct, I think that goes a long way. **@katyadee:** It’s so funny to me you say that you’re not good at English, because you’re doing a really good job with these tutorials. I wouldn’t say you’re bad at English, either—like, individual grammatical concepts, who cares if you’re producing stuff that’s legible, enjoyable to read, and also informational. Your communication is very clear—at least to me, a newbie. **@eankeen:** That’s really good to hear. **@katyadee:** What do you think the relationship between teaching and learning is? **@eankeen:** I think that when you teach, you’re forced to learn something more thoroughly. **@katyadee:** I’ve heard that, but I feel like it’s underexplored. Do you think that attitude is unique in the dev community, at least as far as you know? **@eankeen:** I don’t think it’s uncommon, but a lot of people are just learning and learning and learning, and they don’t use the skills enough, so they can’t really apply them. Application is more important than just knowing facts. The thing is, teaching and applying are pretty similar. Just memorizing isn’t going to make you a better programmer. **@katyadee:** Are there any tutorials you’ve abandoned? Or are there any concepts you’ve found you’ve struggled to explain? **@eankeen:** Yes! I was trying to do this thing where you open up a repl on two computers, and then create a clipboard between computers… but it didn’t quite work out because the library I was using was too buggy, I must have been doing it wrong but I couldn’t figure it out. So I just abandoned it. **@katyadee:** Did you ever figure it out? **@eankeen:** I never went back to it, haha. ## Babylon.js ![babylon](https://storage.googleapis.com/replit/images/1563204593377_d164803549b1d0a3f37feb0ecf1c38fe.gif) **@katyadee:** I like your [two Babylon tutorials a lot](https://repl.it/talk/learn/Making-3D-Babylon-Scenes-more-Dynamic-with-Actions/16132)—I’ve actually featured them in the newsletter. Can you explain what Babylon.js is for people who might not be familiar? **@eankeen:** Babylon.js is a 3D JS library. If you’re thinking about something that’s 3D, like any object, and you want to make it…or animate it…or make it dynamic, you’d use Babylon. **@katyadee:** Have you made any projects with it? **@eankeen:** Yeah, so one of the game jams, I made [a small game](https://Repl.it/talk/share/Silly-Game/13366/33047) with it. That was when I was first learning Babylon. **@katyadee:** What kinds of projects would you say lend themselves best to Babylon vs. another library, like three.js? **@eankeen:** I think if you want to work on a project more long term, you might want to go with Babylon, because Babylon has a Semantic versioning system… but with three.js, you can go between versions and there will be a bunch of changes, so Babylon is more friendly in that regard, because less stuff is going to break from update to update. But another thing to think about is…if you want something more lean, three.js feels more lean. ## React ![react](https://storage.googleapis.com/replit/images/1563204688683_acd8e1eb433c4022f2a20968f1f35f25.png) **@katyadee:** So, I’m not even going to ask why you’re interested in [React](https://repl.it/talk/learn/Learn-ReactJS-on-Replit/15980) because I think it goes without saying—haha. But I do want to ask.. What are some common mistakes you’ve noticed people make when they’re starting off learning it? What are some things you personally found challenging about it? **@eankeen:** I think one mistake a lot of beginners make is not knowing what’s React versus what’s just JavaScript…It’s also kind of hard to work out what’s the big picture. It took me a while to get that big picture and really figure out what’s going on. One thing with Repl.it is it doesn’t really show you all the build tools, which is good for beginners—you shouldn’t have to worry about that at first. **@katyadee:** You had noted somewhere that tutorials kind of gloss over the “obvious” parts of React. What did you mean by that? **@eankeen:** A lot of basic stuff. For example, building your webpack integration file. Or common structures—you need a good foundation or it’ll be a little more difficult. I encountered these problems while learning Vue.js too, which is similar to React. **@katyadee:** I’ve been wondering, despite your great React tutorial, you mention Vue.js quite a bit—do you prefer it? **@eankeen:** I’m just more familiar with it. I also like the aspect of your CSS coming in actual CSS files. When you’re a beginner or less experienced, it’s easier to recognize the different elements. But if you’re using React, it’s less intuitive. **@katyadee:** What was your timeline like, learning Vue.js and React? **@eankeen:** I started learning Vue.js when I started learning Javascript… and React a little bit after. ## Empty ![Screen Shot 2019-07-15 at 8.32.06 AM](https://storage.googleapis.com/replit/images/1563204749091_14a05824bdee2c936562752cd61b2f29.png) **@katyadee:** What is [Empty](https://repl.it/talk/share/full-blockfull-block-Empty-2-warningwarning-this-one-is-super-cool-full-blockfull-block/13572)? **@eankeen:** Oh my god. So @mat1 made an Empty game however long ago. It’s minimalistic. It’s in Python. I thought hey, I want to do something fun. So I wanted to create a sequel. So instead of Python, it’s Javascript. And I talked about how much better it was than @mat1’s Python repl, even though it’s blank. I spent a few hours writing something up, where I was just criticizing the most minute details. I tried to make it sort of funny and sarcastic. **@katyadee:** That’s great satire—I wanted to give it some love here. ## Closing **@katyadee:** What advice would you give to people who want to write their own tutorials? And what would you say to people who would never write their own tutorials? **@eankeen:** For people who want to write a tutorial, look at material you found really useful, and try to copy their patterns. Simplicity goes a long way. For people who would never write a tutorial, I’d say: writing turoials helps you learn things faster!
12
posted to Announcements by katyadee (835) 6 days ago
8
📸APP OF THE WEEK: imag.cf 📸
This week's [App of the Week](https://imag.cf), by @mat1, is a handy—and anonymous!—image uploader written in Python. Poke around the full repl [here](https://repl.it/@mat1/image-upload). ![AppoftheWeek](https://storage.googleapis.com/replit/images/1563202903666_0244515e75690156651144295e2e80d6.png) Goodbye imgur, hello [imag.cf](https://imag.cf)! ![app-of-the-week](https://storage.googleapis.com/replit/images/1563202967513_6b3f2b4e821add59e73c331dd8d54481.gif) *Nominate our next App of the Week [here](https://katyafromreplit.typeform.com/to/o3gnJI).*
12
posted to Announcements by katyadee (835) 6 days ago
13
Visually Pleasing Music Writer (With Turtle Graphics)
Hello! This project was done independently. The programming language used was Python, with Turtle graphics utilized. My project draws a very simple measure of music for you. I will be sanding down some fine points of this project until the deadline if that's okay. If not, then I'm perfectly content with submitting this is my final submission! Please give me feedback for this project! This is my first time posting on repl.it :D
25
posted to Challenge by AbirHaque (13) 10 days ago
5
youtube
search in the search bar and enjoy the videos watch all you want
10
posted to Share by duck132912 (13) 4 days ago
9
Weekly Repls #40
Bonjour les amis! (That's hello friends in french). We're on our 40th weekly repl, and slightly early aswell. I must say, after so many weekly repls, It's hard to find new ways to say hello. If you have any ideas on how I should introduce my next post, I'd love to hear them! Now we may be a little early, but that doesn't mean we have less repls. We've had a ton of super awesome submissions, so let's check them out! @SolarBoom [Creates their own version of the popular hackertyper.com website!](https://repl.it/talk/share/Clone-of-hackertypercom/16635) @numcomx [Speaking on versions of popular apps, checkout this fruit ninja clone! (Can you beat my score of 16200?)](https://repl.it/talk/share/Fruit-ninja-clone-game-made-with-PhaserJS/16585) @phobos [Demonstrates 3 different ways to use async/await in JS!](https://repl.it/talk/share/Parallel-async-in-JS/16564) @ebest [You type into a console, you read your console, but how often do you click it? This game puts your clicking to the test!](https://repl.it/talk/share/Click/16500) @MarcusWeinberger [Using some crazy magic, watch this program unzip a zip file, indefinitely.](https://repl.it/talk/share/A-zip-file-that-contains-itself-forever-Infinitely-unzip-able/16490) @mwilki7 [A silly, but incredibly fun, basketball simulator, I highly recommend you give this a try!](https://repl.it/talk/share/Canvas-Basketball/16479) @MarcusWeinberger [SQL injections are still a prominent attack on the web, and this tutorial explains what they are, so you can avoid them!](https://repl.it/talk/learn/How-basic-SQL-injection-works-with-a-demo/16519)
10
posted to Announcements by 21natzil (684) 7 days ago
6
Using MongoDB with python (using PyMongo)
# How to use a MongoDB database with your python repl! (PyMongo) ## Why though? One of the most common uses of repl.it is to create discord bots and the most common way to store information like "user warnings" is to store it in files (JSON or even txt). But due to some reasons, repl.it does not save the changes made to these files programmatically, so one great alternative would be to use an external DB and as it stands, MongoDB is one of the easiest to learn and most efficient database services out there and `PyMongo` is an amazing library that allows you to store and retrieve and perform other functions with your MongoDB database in a really friendly way. So, that's why. ## Installation Although, if you were doing it locally, you'd need to open up a command line utility and use the following command: - ```shell $ python -m pip install pymongo ``` But repl.it makes it even easier allowing you to simply add packages using the package manager or by creating a requirements.txt file! We'll be using `requirements.txt` file for this tutorial. Feel free to check out the package manager as well. If you don't already know about it, all you need to know about the `requirements.txt` file is that it tells the interpreter which packages to install before running the program. And all the packages are named on different lines. For example, if we needed to use `discord.py` and `pymongo` and `flask` in a project, the requirements.txt would look something like this: - ``` discord.py pymongo flask ``` For now, we only need `pymongo` *(in this tutorial)* so get rid of the other two unless you need them *( for your own app )*. And we're done installing! ------ ### Setting up the Database Goto the [MongoDB website](https://mongodb.com) and sign-in (or register). Once signed-in, you should see a page as shown below: - ![MongoDB home](https://www.imag.cf/XP4RG) Click on the `Build a Cluster` button which will eventually show you a page as shown below: - ![Create a cluster](https://www.imag.cf/C4RE0) Choose your provider, region, plan and other stuff you might wanna have. If you don't know what something means, search on Google (or DDG) or leave it be. *Be sure to give it a name of your choice, nobody wants their DB to be named* `Cluster0`. Finally, click the `Create Cluster` button. And now you'll need to wait for around 5 - 10 minutes. After the long wait, you'll see the dashboard ![MongoDB Dashboard](https://www.imag.cf/WRB10) Click on the `Network Access` tab under the `Security` group in the sidebar. And then click the `ADD IP ADDRESS` button. Click on the button saying `Allow access from anywhere` and then click on `Confirm` which will essentially finish this section. Which means - we finally have everything setup and now we can get started with actually using the database in our program!!! ------ ### Setup (inside the code) Head back to the MongoDB Dashboard's `Clusters` tab under the `Atlas` group. And now click on the `CONNECT` button. It will ask you to choose a connection method, for which, you need to choose `Connect Your Application`. In the next, page you'll see two dropdowns: - 1. Driver - `Python` 2. Version - *<Whichever version of python you're using> (repl.it uses latest anyways)* It will now show you your **connection string**. This is a very important thing so be sure to keep it safe. It is usually of the format - ``` mongodb+srv://<username>:<password>@<cluster>.mongodb.net/test?retryWrites=true&w=majority ``` Now come back to repl.it. In the python file where you want to perform DB operations, type the following code ```py import pymongo # Define a new client. client = pymongo.MongoClient("<connection string here>") # Get the database (database name by default is "test") db = client.db_name # OR db = client.test ``` Now that we have our DB, next thing we need to get is a collection. A **collection of documents** in mongodb can be thought of as a *list of dictionaries* in python. By default, a DB doesn't have any collections. To see a list of collections that the database has, the following line of code can be written: - ```py print(db.list_collection_names()) ``` This will print a list of names (as strings) of all the existing collections in the DB. Since, there was no collection by default, we'll create one for us! Creating a new collection is very easy itself. All you need to do is ```py db.create_collection("collection_name") ``` > **NOTE**: *Try to avoid having spaces in collection names, use underscores( _ ) instead.* And now we have a collection where we can store documents which hold our data! *You can also delete an entire collection by using* `drop_collection` *instead of* `create_collection`. ------ ### Inserting data into a collection Now, we get to the serious part i.e. inserting data into a collection. For which we have a few choices. 1. Insert One Here, we just insert a single document in the collection. > **NOTE**: *Python dictionaries are also treated as documents by pymongo.* Example: - ```py # Getting the collection my_collection = db.collection_name # Inserting a sample document. my_collection.insert_one({"test": "document", "hello": "world"}) ``` And that's it! We've successfully inserted a document to our DB! Now let's have a look at the second possibility. 2. Insert Many This is to insert multiple documents to the collection ( Basically a list of dictionaries instead of a single dictionary ). Example: - ```py # Get the collection my_collection = db.collection_name # Define a list to insert documents = [ {"test": "document", "n": 1}, {"hello": "world", "n": 2} ] # Insert multiple documents my_collection.insert_many(documents) ``` And that's how you insert multiple documents at once. It will not create 1 new document and insert the list as it's value, instead, it will create new documents for each of the dicts inside that list! And those were the two ways of inserting data. ------ ### Searching for documents in a collection Now that we've inserted some stuff to a collection, we can fetch and view it whenever we want. This can also be done in two ways: - 1. Find One In this method, pymongo will return the first element it finds satisfying the *query*. The general syntax for this is: - ```py db.collection_name.find_one(query) ``` Example: - ```py # Get the collection my_collection = db.collection_name # Find the document x = my_collection.find_one({"field": "value"}) ``` This example will search for a document in the collection `collection_name` whose `field` field's value is `value`. 2. Find In this method, pymongo will return **all** the elements it finds satisfying the *query*. The general syntax for this is: - ```py db.collection_name.find(query) ``` Example: - ```py # Get the collection my_collection = db.collection_name # Find the document x = my_collection.find({"field": "value"}) ``` This example will search for **all** documents in the collection `collection_name` whose `field` field's value is `value` and return a object of the `Cursor` class which can be treated as a list of the resulting documents. And these were the two ways to search for documents that are there in a collection. ------ ### Deleting documents And now, we have some documents that we can get rid of (delete them of course). Deleting can also be done in two ways: - 1. Delete One For deleting just one document. Pretty similar to the `find_one` function, we need to provide a query object and then it will delete the very first item it finds that satisfies the query. Example: - ```python # Get the collection my_collection = db.collection_name # Delete the document my_collection.delete_one({"field": "value"}) ``` This will delete the **first** document it finds which has a field named `field` whose value is set to `value`. 2. Delete Many For deleting all similar documents. Pretty similar to the `find` function, we need to provide a query object and then it will delete the very first item it finds that satisfies the query. Example: - ```python # Get the collection my_collection = db.collection_name # Delete the document my_collection.delete_many({"field": "value"}) ``` This will delete **all** the documents it finds which has a field named `field` whose value is set to `value`. ------ ### Replacing existing documents Since we have some documents in our DB, sometimes we might need to delete one and add another document simultaneously. Instead of first deleting and then inserting a new document, we can simply use the `replace` function. This can be achieved by using the `replace_one` method of the collections which takes two parameters - the `query` which will allow it to find the existing document to be replaced **and** the `replacement` which will be inserted. Example: - ```python # Get the collection my_collection = db.collection_name # Replace a document my_collection.replace_one( {"some_field": "some_value"}, {"field_one": "value_one", "field_two": "value_two"} ) ``` This will first search for a document that has a field named `some_field` whose value is set to `some_value` and then replace it with the new document we provided. If it is unable to find the document to be replaced, it will throw an error. The error can be prevented if we pass the optional `upsert` parameter and set it's value to `True` as given below: - `my_collection.replace_one(query, new_document, upsert=True)` This will simply insert the `new_document` if the query did not return any results instead of throwing an error. ------ ### Some resources to learn more - [MongoDB documentation](https://docs.mongodb.com/) - [PyMongo Official Tutorial](https://api.mongodb.com/python/current/tutorial.html) - [PyMongo Examples](https://api.mongodb.com/python/current/examples/index.html) - [PyMongo API Documentation](https://api.mongodb.com/python/current/api/index.html) ------ # The End If you have any questions, let me know via the comments. If you found this tutorial to be helpful, please upvote. Thanks for reading it to the end!
5
posted to Learn by TheDrone7 (516) 4 days ago
22
MUSIC HACKATHON: FAQ
Hey folks! A lot of you have been asking me the same kinds of questions, so I figured i'd make a handy FAQ: **1. What's the theme?** The theme is *music!* **2. Does this mean my repl has to play audio?** No - it doesn't. You're free to interpret "music" however you'd like! One of my favorite music-related repls we've received on the site is @jajoosam and @thesephist's [lyrics.rip](https://lyrics.rip), which didn't play audio but did generate fake lyrics. It's all about what you want to create. Not sure if your repl fits the theme? Hit me up on Discord or post here - I'm happy to talk you through anything. **3. So... what's the deal with copyrights?** This one is kind of nebulous. My best advice here is not to use any copyrighted songs, because you never know how you'll want to share your repl or where. **4. How much of my work can be from libraries or previously made?** "Original content" means this: *don't steal other people's work!* Things that are open source, libraries, are free to use with attribution, etc. are fair game. **5. How will my work be judged?** We're looking for creativity and execution here. This doesn't mean it has to be super complex though. If an idea is good, an idea is good! **6. What language should I create my repl in?!** The cool thing about a flexible theme? If you can find a way, you can do it. Web projects have so far proven to be popular though. **7. Can I create my entry elsewhere then c/p it into a repl?** No :-( The idea here is to use Repl.it! **8. Can I have (a) partner(s)?** Sure can! We encourage folks to use Multiplayer for group projects.
17
posted to Challenge by katyadee (835) 15 days ago
22
BeatKeeper - Make a rhythm game out of literally any song
# BeatKeeper Although I did all the coding on this game, I have to give a huge thank you to the [p5.js](https://p5js.org) and [JsMediaTags](https://github.com/aadsm/jsmediatags) libraries for making my life easier in both the frontend and the backend. Also, thanks to [Vexento](https://www.youtube.com/user/Vexento) for the home screen music. BeatKeeper is a game that allows you to upload any song you like and it will create a rhythm game in real time. ![image](https://storage.googleapis.com/replit/images/1562552931497_b1bb44cd3d2a96064ba73d46869bc32b.png) I put a lot of work into the game, adding features such as: * Real-time audio analysis and beat detection * Music visualization using the Fast Fourier Transform * Upload any mp3, wav, or ogg file to the server * Auto-delete files older than one hour * Song title and artist auto-recognition * Adaptive treble threshold * and more! The awesome thing about BeatKeeper (I think) is that this has never been done before. A rhythm game maker, as far as I know, has not existed before this in Javascript and with any song. Previously, the Javascript versions have needed special .bms files which contain a preprocessed audio analysis. This does it in real time. I'm going to keep updating BeatKeeper until the deadline. I would really appreciate if you could play the game and let me know what you think. Keep in mind that not all songs will work well with this. The best possible songs (as proven in the demo) are loud, with a well-defined beat. ## PLEASE OPEN IN FULLSCREEN AND USE HEADPHONES!!
3
posted to Challenge by rshetty (64) 13 days ago
1
Smartify - A Smart Way to Generate Playlists
![smartify](https://storage.googleapis.com/replit/images/1563415108147_a4e4cac8961ddd3aa1e4a5f5092d9b0a.svg) ![introduction](https://storage.googleapis.com/replit/images/1563415136018_fcae7b95066de01a735042bde4ce50d8.svg) We all know how it feels to be listening to an energetic song and suddenly getting pumped up, only to find that the next song in our shuffled queue is sad and depressing. That not only ruins the mood of the album, but also the general consistency. Luckily, Spotify provided me enough breadcrumbs along the way through their various APIs to be able to build the solution to this very problem - a thematically consistent album generated, deemed "Smartify." Smartify takes factors like "danceability," "valence," "key," "energy," and "speechiness" (as described in the FAQ in the website below) - all major thematic defining factors of songs that we commonly know - and computes the standard deviation between the "scores" for each of these factors for every song in the playlist. Then, Smartify will find the song with the smallest "standard deviation" and add it to the queue. The previous song is then appended to a "played" list, thereby ensuring that the song does not get replayed and that Smartify doesn't fall into a loop - after all, it's supposed to be smart. After that, it'll generate a Spotify playlist for you (after you sign in and give it permissions) that follows a thematically consistent ordering. You can then add/remove songs at your leisure. If you're only using Smartify to find similar songs within playlists/albums, you can also preview the songs through Spotify's inbuilt player (although the preview is only 30 seconds). You can also view the lyrics for songs that are not instrumentals :) *Edit: Not true since my API website is **really** slow... will have to find another way* **TL;DR: What's so special about Smartify?** Fact is, if you have a playlist, it's very likely you don't want recommendations outside that playlist (or far off of the theme). Because of this, things like YouTube autoplay seem rather deprecated. On the other hand, our playlists are often shuffled into jumbled and inconsistent queue's in terms of how they sound - Smartify offers a two-fold solution by ensuring that the content of your albums/playlists stays the same, but that the order is optimized to be the very best by grouping similar songs together. So, without further ado, here it is: [https://smartify--shadowcypher.repl.co](https://smartify--shadowcypher.repl.co/) And its nemesis: [https://evilify--shadowcypher.repl.co](https://evilify--shadowcypher.repl.co/) *You can now search for your favorite albums/playlists, so you do not need the IDs below* ![albumID](https://storage.googleapis.com/replit/images/1563415136012_5a54fd1aba132e177cbfe1ee3b3bfec0.svg) Here are some ID's to try, unless you want to test your own: Drake's *Scorpion*: **37i9dQZF1DX1YF6nTEHymi** Post Malone's *Beerbongs and Bentleys*: **6trNtQUgC8cgbWcqoMYkOR** Elton John's *Diamonds*: **1uzIyRT1QxDx4fMIX0UiAE** ![helpguide](https://storage.googleapis.com/replit/images/1563415136045_0fd6548eb9dd9991af1d3cd12ff7b7e7.svg) **Getting an Album ID** For any album sharing link, it will be in the format: [https://open.spotify.com/album/**ID**](https://open.spotify.com/album/ID) Just paste the **ID** into the homepage's text box and it should work. **Forbidden/CSRF Token Trouble** For some reason, repl.it's embedded applications cannot implement CSRF form tokens, so you'll need to open the site in a new window. **Overlapping Albums** Yep, unfortunately this is the biggest issue right now. Since the views reference one class, overlapping users may experience overlapping album. As such, I recommend that you create a playlist to ensure that your "progress" will not be deleted if another user logs on. **Refactoring** Since up to this point I've just been adding new features, the code looks somewhat dirty and is often repetitive - I have to fix this once I get the general sense that Smartify satisfies all features anyone would ever want. ![suggestions](https://storage.googleapis.com/replit/images/1563415136207_65583633f2dca7c7a64a756792424ae0.svg) Please let me know if you have any suggestions. I literally created this a week ago, and I'm quite proud of it but there's a chance I'm overlooking something. If you want me to let the site play the full songs, don't worry, that's exactly what I did (but you may need Spotify Premium - something I'll fix soon enough). **We're currently at 1687 page views (as of 1:00PM PST, 7/19)** **Future Plans** - Add domain & Cloudflare - Share playlists? - Lyrics comparison --> Really slow right now - Entropy --> Will allow external albums as entropy increases and conform to the current album as entropy is close to 0 - Use of advanced data structures (actually taking a course on this haha) -> use priority queues - General refactoring
6
posted to Share by ShadowCypher (13) 1 day ago
12
Canvas Basketball
Time your jump and shot to make it into the hoop. Press Space to jump, S to shoot F for solitaire mode W for walls C to clear screen of all balls D for debug info Smartphone controls: Touch down to jump release touch to shoot New "Clear balls" button added (I should have added this long ago) - Thanks democat for the feedback Also added hotkey for it, along with a scoreboard - Thanks ebest for the feedback
10
posted to Share by mwilki7 (111) 12 days ago
39
👀 Domain Hack Finder 👀
# Domain Hack Finder Ever want to make a website, but you haven't been sure what you should name it? According to Wikipedia, a domain hack is a domain name that suggests a word, phrase, or name when concatenating two or more adjacent levels of that domain. For example, "bir.ds" and "examp.le", using the fictitious country-code domains .ds and .le, suggest the words birds and example respectively. In this context, the word hack denotes a clever trick (as in programming), not an exploit or break-in (as in security). Learn more about [domain hacks on my blog](https://www.matdoes.dev/blog/post/what-are-domain-hacks) ![Domain Hack Finder](https://storage.googleapis.com/replit/images/1560713948448_70de33f52af24ebcae9e109e2fd5828f.pn) [Try it out now! 😎](https://domain-hack-finder.mat1.repl.run) (Upvote this post for free Robux or MineCoins or whatever!)
45
posted to Share by mat1 (2255) 1 month ago
1
CMD, The Game
Hey, I'm Elias, I'm thirteen and I work with a Dev. team called Crescent Moon (Aniketh, Ethan, Ayden) and this is our first project. We will be making more games, apps, etc. We are accepting donations, this is my link: paypal.me/ehadjipanayis
6
posted to Share by Wassu (1) 2 days ago