DEV Community

Cover image for MongoDB Atlas Hackathon Help Thread
dev.to staff for The DEV Team

Posted on

MongoDB Atlas Hackathon Help Thread

If you're participating in the MongoDB Atlas Hackathon and you need some help with your submission, welcome! You are in the right place and we're excited to help.

If you have any questions about how this contest works (ex: due dates, how to post your submission, picking a category, etc.) the DEV team will be happy to assist you.

If you are running into issues or get stuck when it comes to using MongoDB, we will surface all technical questions for the MongoDB team and answer here on their behalf!

Please comment below if you need asynchronous assistance with the MongoDB Atlas Hackathon ❤️

P.S. If you'd like to share an update on the progress you're making on your project or if you'd like to connect with other participants, please do so in the community update thread!

Oldest comments (125)

Collapse
 
ivavay profile image
Ivy Chen

For the Apache-2 permissive license, do we just place it at the bottom of our README?

Collapse
 
joellord profile image
Joel Lord

To add a licence to a Github repository, you can add the license itself in a file named LICENSE.md at the root of your project. You can also find instructions on Github.com on how to add a license to a repository (docs.github.com/en/communities/set...).

Collapse
 
ivavay profile image
Ivy Chen

Got it thank you!

Collapse
 
shaijut profile image
Shaiju T • Edited

@thepracticaldev Can we take part as a team, And its ok to show the working application in github, and in local machine without hosting ?

Collapse
 
joellord profile image
Joel Lord

Hi @shaijut,

Yes, you can definitely submit as a team. The more, the merrier, right? The prize will be sent to the person who posted the submissions, and you will need to work it out as a team.

For the application, it doesn’t need to be hosted anywhere, although you might want to look into Realm Hosting since using multiple services might make the judges happy 😜.

Whether you host the application or not, make sure that you provide detailed instructions on how to set up the application so that the judges can give it a try.

Collapse
 
shaijut profile image
Shaiju T

Thanks. 2 question.

  1. In automation innovation can we try to automate thinks like mail support to bot based, my application will be security domain based ?

  2. Does Mongo db has just key value store like redis, is there any specific product to store large number of links as values, to query faster ?

Thread Thread
 
joellord profile image
Joel Lord

To your first question, the answer is yes! Anything that uses an Atlas Serveless instance (docs.atlas.mongodb.com/tutorial/cr...) will fit in this category.

For your second question, MongoDB offers a flexible data schema that can accommodate just about any type of data format. The speed of the query will depend on many different factors. I suggest that you start by exploring the data modeling intro from our docs (docs.mongodb.com/manual/core/data-...), or the talk “From Tables to Documents” (youtube.com/watch?v=j9N1dIVmV48).

Collapse
 
manisgoyal profile image
Manish Goyal • Edited

@thepracticaldev Do we have to make a web app as in website or can we make an android app?

Collapse
 
joellord profile image
Joel Lord

Feel free to use whatever technology you’d like! The more creative, the better 🎉.

As long as you provide all the instructions for our judges to be able to test the application on their own, you can use any programming language or platform that you want.

Collapse
 
bytrangle profile image
Trang Le

"test the application on their own": Should I provide instructions to use the app as an end user, or a developer?

Thread Thread
 
fly_away profile image
简·多伊

I believe either should be fine. You can deploy your app to a cloud platform like Heroku or Netlify as a live demo and/or provide instructions in your Git repo README for the judges to run & test. Since open source licensing of the app's code is one of the requirements, I assume the judges are developers themselves who will be reviewing code & installing your app anyway.

Thread Thread
 
fly_away profile image
简·多伊 • Edited

Yup, @joellord 's profile says 'Developer Advocate' 👍
Who I think is one of the judges

Collapse
 
joshuajee profile image
Joshua Evuetapha

I didn't receive a mail with the special code after i filled the form

Collapse
 
graciegregory profile image
Gracie Gregory (she/her)

We will look into this!

Collapse
 
graciegregory profile image
Gracie Gregory (she/her)

@joshuajee it appears that you did receive the email (on December 15 at 4:17 PM Eastern Standard Time/10:17 PM West Africa Standard Time). Did you check your spam folder?

Collapse
 
idiglove profile image
Faith Morante

Hi! I can't seem to make HTTPS Endpoints work with Postman, I didnt add any additional authorization, and also tried using API Keys and I always get same error response:

{
    "error": "no authentication methods were specified",
    "error_code": "InvalidParameter"
}
Enter fullscreen mode Exit fullscreen mode
Collapse
 
idiglove profile image
Faith Morante

I got it now! The function setting for Authentication should be set to System

Collapse
 
reidjs profile image
reid j sherman

Does anyone know where the docs are to access atlas full text search output through a tool like curl or postman?

Collapse
 
ritarodrigues profile image
Rita Rodrigues

Hi :D,

Generally, you would have a backend that connects to your MongoDB Atlas instance so that your browser can connect to that backend. This backend would use the native MongoDB driver for your language (docs.mongodb.com/drivers/).

If you want to test your Atlas Search results directly in cURL, you can use the Atlas Data API (available now in Preview - docs.atlas.mongodb.com/api/data-ap...). The Data API enables you to query data directly in HTTP, and will work with both curl and Postman. Note that this won’t work in your browser though..

Examples of using the Atlas Data API for Atlas Search:
github.com/mongodb-developer/atlas...

If you only need to test the output of your Atlas Search queries, you can use the Atlas Search UI directly (docs.atlas.mongodb.com/atlas-searc...), or Compass (mongodb.com/products/compass), the MongoDB GUI. The latter is the easiest way to test and explore data from your collections.

Collapse
 
sahilpabale profile image
Sahil Pabale

I have doubt about the Grand Prize!
Will the $1500 given to every top 5 winners or only top 1 winner?
and same with other 4 listed in Grand Prize section!

Collapse
 
star_trooper profile image
Atharva Shirdhankar

1 grand winner from every category( E-commerce, prime time ,Action Star, Automation Innovation and Choose your own adventure) will be selected.
And 10 runner up

Collapse
 
graciegregory profile image
Gracie Gregory (she/her)

Correct! There will be a $1,500 prize for each category :)

Collapse
 
cloudkungfu profile image
Javel Rowe

Created an add to calendar link: Add MongoDB Atlas Hackathon to Google Cal

Collapse
 
kmukabe profile image
Kacha

Hi, I'd like some help understanding something in the realm data schema.
In what scenario would we use the relationships.json under the mongo-atlas schema in data-sources?
Why use this relationships file instead of just using embedding or adding a field with an objectId referencing another collection.

I hope I have asked that semi-coherently.

Collapse
 
joellord profile image
Joel Lord

Hi!

I think I would need more information before I can answer this question. Also, for more technical questions, you might want to try to search or post on our community forums (mongodb.com/community/forums/), you will normally get a quicker answer there.

Regarding the use of relationships or embedding fields, there is no one-size-fits-all solution. The general rule of thumbs is that if data is accessed together, it should be stored together. You can find out more information about data modeling in our docs (docs.mongodb.com/manual/core/data-...), or watch the talk “From Tables to Documents” (youtube.com/watch?v=j9N1dIVmV48).

I hope this helps.

Collapse
 
sumedhamehta profile image
Sumedha Mehta

Hi - I'm from the Realm Team! You're pretty much correct. The relationships defined in Realm let you easily reference fields in another collection to define your relationships instead of having to embed them in your documents. This is especially valuable when using services like Realm's Hosted GraphQL API or Realm Sync because we will automatically resolve the relationship for you without having to do a $lookup or another query.

Collapse
 
frikishaan profile image
Ishaan Sheikh

Hi everyone!

I am thinking of using a MongoDB atlas serverless DB with a Laravel Application. In which of the categories will it fit?

Collapse
 
joellord profile image
Joel Lord

Hi!
Without more information about your submission, it’s hard to tell. I would say that the “Automation Innovation” is probably the best match since it’s using MongoDB Atlas Serverless.

I suggest that you wait until you complete your application. Once you completed it, look at the suggested categories in the above post again and see if it fits well in a specific category. If it doesn’t, you can submit it in the “Choose your own adventure” category.

Looking forward to your submission!

Collapse
 
frikishaan profile image
Ishaan Sheikh

Thanks Joel!
I am creating a clone of testimonial.to.
I think it will fit in 'Choose Your Own Adventure' category. But I have doubt that my project satisfies this '...the winners we select in this category will be the ones that got super creative and wacky! Feel free to go as random as possible.'

Collapse
 
rifkyniyas profile image
Rifky Niyas

@thepracticaldev Hi, I need some help regarding categorizing our application. What if there are functionalities that suit one or more of the mentioned categories? Should we mention a specific one or all the suited categories or in the fifth category? The fifth category is for applications that doesn't fit any of the other four categories right?

Collapse
 
bytrangle profile image
Trang Le

Usually, for the last category, they're looking for a very wacky implementation, the one that would get featured on Codepen and make you say: "Cool. But what do I use it for?"

Collapse
 
ishanpro profile image
Ishan Tiwari

The whacky is for projects that have some use for sure but not a very common one. Like a chat app a e-commerce app. That should have a untraditional use

Collapse
 
valentinesean22 profile image
Valentine Sean Chanengeta

True I also need clarification on this

Collapse
 
rifkyniyas profile image
Rifky Niyas

Hi eventhough I recieved the coupon code and applied it to my account, when creating a serverless instance, it still requests for payment verification. Is there a way around this?

Collapse
 
joellord profile image
Joel Lord

Hi,
Unfortunately, in order to apply for the coupon, you will need a payment verification. You should have more than enough credits for the duration of the challenge though, and if you need more, just reach out to us, we’ll gladly send you another code.

Collapse
 
kmukabe profile image
Kacha • Edited

Hi @thepracticaldev , I'd love some help from the MongoDB team or anyone who has come across this. I have a realm app with email/password authentication enabled and I have a react native app that does sign up and sign in.
When using the sign in method from the realm library:

const creds = Realm.Credentials.emailPassword(email, password);
const user = await Realm.app.logIn(creds);
Enter fullscreen mode Exit fullscreen mode

when I console log the user I get an empty object { } but when I call user.id I get the id of the user object. I'm not entirely sure what I have done wrong but I think this is causing further errors because I am getting an error when I try to open a realm connection with this user.
Any help would be great.

Collapse
 
joellord profile image
Joel Lord

Hi,

For more technical questions, you might want to try to search or post on our community forums (mongodb.com/community/forums/), you will normally get a quicker answer there. As for your question, you could try creating an object that contains your application, and then use the methods for this application. Right now, I’m not sure if your Realm.app is an initialized property. You could try this out:

const app = new Realm.App({ id: "<APP_ID>" });
const credentials = Realm.Credentials.emailPassword(email, password);
const user = await app.login(credentials);
const userProfile = app.currentUser;
const userId = app.currentUser.id;
Enter fullscreen mode Exit fullscreen mode

I hope this helps!

Collapse
 
fly_away profile image
简·多伊 • Edited

Can I include and refactor broken/hacky code that I'd written previously? I'd like to try again for this hackathon since I failed the last time. Hopefully this time I can manage to stay focused and build a working app with MongoDB on the backend. This will be my first time learning and working with MongoDB Atlas tools. Please let me know if this is allowed or not. Thanks

Collapse
 
bytrangle profile image
Trang Le

I'm not from MongoDB but I don't see why not since most apps are built by remixing existing apps. Most hackathon winners have been in the trench for donkey's years, so I think the more hackathons you participate in, the higher chance you'll win.

Collapse
 
fly_away profile image
简·多伊

Thanks Trang! It's too late for me to participate 😅
Good luck in the contest! 🙂

Collapse
 
fly_away profile image
简·多伊

Is there a way to change MongoDB's default port 27017 to run on another port? For a shard cluster?

Collapse
 
joellord profile image
Joel Lord

Yes, it is possible, however, the easiest way to use MongoDB is with MongoDB Atlas (account.mongodb.com/account/login), the cloud offering by MongoDB. When using Atlas, you only need your connection string, and don’t need to bother with configuration and ports.

This challenge is specifically about MongoDB Atlas so you should give it a try to see. You will most certainly find that it’s much easier to use than a local version of MongoDB.

Looking forward to your submission!

Collapse
 
fly_away profile image
简·多伊

Thanks Joel, I wanted to participate. My ❤️ said 'yes' but my 🧠 said 'no'. Should have spent time working on my project for this hackathon, but I got distracted with producing 🎵 + 🎨 instead 😒. With < 2 days left, I won't be able to make the deadline, sadly. Plus those pesky bugs always take unexpectedly longer to resolve 😮‍💨 Maybe next time if there is a next time