Ask coding questions

← Back to all posts
ReplForms Planning
h
Zavexeon (1052)

Hey there! This is planning for ReplForms, and I just wanted some community feedback before I dived into development. First off, let me explain what ReplForms is.

ReplForms

ReplForms is superficially Google Forms, but tailored more towards usage in the repl.it community. This is mainly inspired by my program failing to create some of the groups for the MMH because people changed their usernames on the Google Form signup. @MrEconomical's repl mail (go check it out!) is a source of inspiration as well.

Features To Include

  • Repl Auth (I just recently figured it out)
  • Ability to list/unlist forms
  • Set expiration dates on forms
  • Various question types for forms, multiple choice, text, select-all, dropdown, etc
  • Option for anonymous forms (user is not recorded)
  • Export form submissions as JSON
  • View submissions as various graphs/charts (this'll be hard)
  • Max amount of submissions per user option
  • Embed repls in forms or form submissions

Development Process

1.) Build server with API for manipulating forms
2.) Build front end using server API
3.) Fix broken features, add new ones

Suggestions

Any suggestions or features that I should include? Please don't be afraid to vocalize your suggestions. I want to build as much into the app for the first version.

Suggestions I have Received

  • Public API (I will try to implement this, I need to be able to somehow authenticate requests sent to it)
  • Markdown
  • Image uploads (possibly, would probably need to set up Firestore)
  • Customized colors for forms (will attempt to add)
  • Email users completed form (maybe)

Progress

You can view the progress here.

  • 1/31/2020: Work on server has began
  • 2/3/2020: Started the database before finishing the rest of the server. Using Firestore.
  • 2/5/2020: Figured out a way to authorize access to the API! There will be a public API!
  • 2/12/2020: Server has been rewritten in Koa because of some HTTP module quirks. Dabbled a tiny bit in the front end.
Commentshotnewtop
V3rmillionNet (54)

Now, when are we getting replOS? (Or relphub)

I mean, this community is making web apps like google does but open source...

We got already a coding platform a social media and a e-mail app...

and soon we are getting a replforms?!

damn this is growing too fast, can't wait for the end of 2020 and see the changes.

MarcusWeinberger (589)

Definitely markdown, image support would be nice. Will the API be open to the public with documentation on how to access it because I'd love to make a command-line client!

Zavexeon (1052)

@MarcusWeinberger I'll try to make an API available to the public depending if I can figure out a way to secure it.

Zavexeon (1052)

@LittleNomster I was considering that, would it be useful for a survey, though?

[deleted]

Nooo!!! Not Repl Auth!

[deleted]

It doesn’t work on mobile devices. To make it mobile friendly, use a built-in log in system. @Zavexeon

Zavexeon (1052)

@CodeABC123 Hmm... I could make an alternative login system, but it'd still use your repl.it credentials. dolya.me uses the same thing.

[deleted]

That’s great! @Zavexeon

BreloombossIs (11)

i must say, i love your profile picture. :-)

Zavexeon (1052)

@BreloombossIs Aww thanks! I drew it myself.

And I must say I love your username.

[deleted]

What is your profile pic even supposed to be? @Zavexeon

AdCharity (1329)

Firestore? I would just use google cloud storage on cloud console

Zavexeon (1052)

@AdCharity Do you have some documentation on how I could do that? I'm not very experienced with setting up databases.

AdCharity (1329)

@Zavexeon
I have less documentation and more like a couple projects I could share with you. Of course, I'm biased because I haven't gone out of my way to use Firestore before, but I could try to help.

Actually I'm not sure if the google cloud storage bucket is firestore or not :/ I'll try to research up on that.

Zavexeon (1052)

@AdCharity I really just need a place to store JSON, but rather large amounts of it. And I don't want to store it as one large JSON object like jsonstore.io or something like that.

AdCharity (1329)

@Zavexeon also do u know how won the hackathon for the about:me

Zavexeon (1052)

@AdCharity Nope, I haven't heard anything about it yet.

PDanielY (1130)

Why is this in ask?

Zavexeon (1052)

@PDanielY I'm asking for feedback on my plan.

Highwayman (1395)

Maybe you could add that feature that google forms has where it emails you the completed form, I like that feature it’s helpful.

Zavexeon (1052)

@Highwayman Ooh, hmm... I'll have to think on that one. Never worked with emails before.

Highwayman (1395)

@Zavexeon may I be so bold as to suggest

Only Repl Mail?

Zavexeon (1052)

@Highwayman I can probably get the email thing figured out. It'll just be lower on my list of priorities lol.

Highwayman (1395)

@Zavexeon awesome lol. 😜 good luck!

PDanielY (1130)

@Zavexeon you can use a gmail account and program it to send emails or you can create your own smtp server

AdCharity (1329)

@Zavexeon I suggest node mailer to make it easier

Bookie0 (4575)

Hey,

I just want to say that it’s a great idea! Also, you could should add a feature where the user can customize the color or font of the app or text that the user writes or the way someone can organize their files.

I don’t know, like just a suggestion. Me myself I wouldn’t be able to do something as complex and as cool as that, but I wish you good luck with it! 👏👏👍👍

Have a great day!

Zavexeon (1052)

@Bookie0 I can try the color thing. :)

Zavexeon (1052)

@Bookie0 Oh, and also: You have a great day too! <3

Bookie0 (4575)

Oh ok @Zavexeon,

Thanks for trying out the suggestion! 😀😀😁

Have a great day!

Bookie0 (4575)

Wow @Zavexeon
You’re the only person in repl who has said that to me! 😂
Thank you!

Warhawk947 (527)


also i think you sohuld add multiplayer collaboration on forms

PDanielY (1130)

Can we use react/next for frontend? thx

PDanielY (1130)

@Zavexeon its a lot easier. For example if you have code in another page and you want to put it on the page you are editing you can do that with one line of code

Zavexeon (1052)

@PDanielY I'll just use string templating and send the final string to the client. No need for React/Next, that's overkill for my usage. So like:

let htmlString = 
`
    <!DOCTYPE html>
    <html>
      ${someString} 
    </html>  
`
PDanielY (1130)

@Zavexeon Bruh, next is so much easier than that, plus I know people who know next that may want to help (Kognise, amasad, etc)

PDanielY (1130)

@Zavexeon next also has another feature. I don't remember the name but you can go to another page without even reloading

PDanielY (1130)

Is this still in development?

Zavexeon (1052)

@PDanielY I haven't really programmed much at all recently, but it's at the top of the list as far as all my projects. I haven't had any opportunities to have a solid block of programming time recently.

AdCharity (1329)

Suggestion: save form data to a sort of sheets

Zavexeon (1052)

@AdCharity I planned on just doing it to a JSON file per form.