B2

Best Place 2B

Demo

BaselHack 2024

We chose the challenge from Endress&Hauser "GuideMe". Our team is "Best Place 2B". The product can be checked out on: https://2ce6-83-76-7-131.ngrok-free.app/ (Don't worry about the security warning. That is hosting service specific, and we are good people not hosting malware.) Try it: QR code to webapp of best place two be

Explanation for Developers

Please make sure that everything, that is code related, goes into code directory.

If you have documentation about the code (e.g. UML Diagrams, a readme etc.), that should go into the documentation directory.

If you have assets (like videos, presentations etc.), this can go into the assets directory.

You can use the MIT license in this template. Make sure to adjust the copy right holders in the placeholder <copyright holder> and add every team member to it. You are also free to choose any other license - depending on the consensus of your team.

Frontend

We use react and tailwind.

To get it to run locally: use npm install to get dependencies then run: sh npm start

AI

We use API calls to OpenAI, but you can also try it locally: install openai-whisper (this downloads a few packages of ca. 2 GB) sh pip install openai-whisper pip install openai pip install python-dotenv Make sure you set your API key in an .env file. NEVER push that to the repo. To test the AI transcription + formatting function (audio -> text), you can run the function transcribe_and_format_audio. To test the AI generation of text descriptions from a series of images (images -> text), you can run the function gen_texts_from_images. Both are located in the file: sh code/backend/ai/ai_functions.py

Backend

Our backend is python flask with a SQlite3 database. install flask and flask-cors sh pip install flask flask-cors

Start the backend flask server with sh python code/backend/app.py

To upload locally you can use sh curl -i -X POST -H "Content-Type: multipart/form-data" -F "images=@/home/user/Pictures/pepe.jpg" -F "images=@/home/user/Pictures/hands.jpg" http://127.0.0.1:5000/upload/images to upload multiple images.

Analog use
sh curl -i -X POST -H "Content-Type: multipart/form-data" -F "audio=@/home/user/Music/never_gonna_give_you_up.mp3" http://127.0.0.1:5000/upload/audio to upload audio.

❤️ 💻 🍫

This content is a preview from an external site.
 

Event finish

Add duck data (@dan-42)

Merge pull request #36 from Poisonlocket/origin/feature/qr-FME

Add qr code to app to readme (@Tamalera)

Add qr code to app to readme (@Tamalera)

Update readme.md (@Poisonlocket)

Merge pull request #35 from Poisonlocket/origin/feature/readme-FME

update readme (@Poisonlocket)

update readme (@Tamalera)

Merge pull request #34 from Poisonlocket/frontend

probs last commit, fixed up the ui, stuff is readable now (@Poisonlocket)

probs last commit, fixed up the ui, stuff is readable now (@Poisonlocket)

Fix package-lock.json (@dan-42)

send correct data to frontend (@dan-42)

Merge branch 'backend' (@LeonardKarsunky)

Change README (@LeonardKarsunky)

Merge pull request #33 from Poisonlocket/frontend

improved landing page + ux for editing a guide (@Poisonlocket)

Merge branch 'main' into frontend (@Poisonlocket)

improved landing page + ux for editing a guide (@Poisonlocket)

Merge branch 'backend' (@LeonardKarsunky)

Change README (@LeonardKarsunky)

might get dropped later (@Poisonlocket)

Fix all guides request (@dan-42)

print debug statements (@ehratjon)

handle if there are no guides available and respect uuid given by frontend (@ehratjon)

Merge pull request #32 from Poisonlocket/frontend

Frontend (@jpassweg)

Merge branch 'main' into frontend (@jpassweg)

fix: api more work more bugs (@jpassweg)

added a stepcount to ai transcribeandfromat_audio to get upload to work (@ehratjon)

reference errors and wrong handling of empty guides (@ehratjon)

Merge pull request #31 from Poisonlocket/frontend

Frontend (@jpassweg)

Comment out gentextsfrom_images to advance with debugging and care about AI later (@ehratjon)

Merge branch 'main' into frontend (@jpassweg)

prepare for loop (@jpassweg)

cross origin everywhere? (@ehratjon)

endpoint /guides/ should be in json format now (@ehratjon)

Merge branch 'main' into frontend (@jpassweg)

fix: api formdata issue (@jpassweg)

endpoint /guides in json format with double quotes (@ehratjon)

fix: json extraction started (@jpassweg)

Merge remote-tracking branch 'refs/remotes/origin/frontend' into frontend (@jpassweg)

tryout (@jpassweg)

Merge branch 'frontend' of github.com:Poisonlocket/bestplace2bbaselhack24 into frontend (@dan-42)

Fix AllGuides (@dan-42)

Added more possible outcomes (@LeonardKarsunky)

fix: more logs (@jpassweg)

Added case when there's no images in the uploads folder (@LeonardKarsunky)

fix: asBlob function (@jpassweg)

Add asBlob to Recording (@dan-42)

Merge branch 'main' into frontend (@jpassweg)

fix: api (@jpassweg)

add as Blob and improve UI (@dan-42)

Start

 

The application that powers this site is available under the MIT license.