Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Sasha Shpota
    @Shpota
    Thank you! I'll apply the changes tomorrow.
    Sasha Shpota
    @Shpota
    I am working on the CLI implementation for the --frontend option. These are breaking changes and I'm going to merge them only after I check and test everything precisely. I have not included the regenerated static/generated.go file yet.
    Here is the PR: Shpota/goxygen#40
    It would be great if somebody could take a look at it and say what they think.
    Jakob
    @Jakob-em
    What about creating the generated.go file as part of the CI workflow?
    For example every time a commit is tagged with a version, the generated.go file could be generated and a new github release should be created.
    Sasha Shpota
    @Shpota
    I generally like this idea. The only concern I have is security. I am not sure how it is like with GitHub Actions, but there was time when anybody could simply run echo $ACCOUNT_SECRET in Travis and get write access to an account :)
    But it is certainly something that requires improvement. An alternative solution would be to manage templates in a separate repository and fetch them via network on the client side.
    Sasha Shpota
    @Shpota
    I have just published Goxygen v0.2.0. Thank you for your contributions!
    https://github.com/Shpota/goxygen/releases/tag/v0.2.0
    Douglas Souza
    @douglas-DS
    i've opened right now a pull request for a translation to pt-br of README file
    Lox3ur
    @cgaspart
    Hi all, when i try go get -u github.com/shpota/goxygen i have this message: # github.com/shpota/goxygen/codegen ../go/src/github.com/shpota/goxygen/codegen/codegen.go:26:13: undefined: strings.ReplaceAll
    Anthony Anonde
    @tonymj76
    hello everyone am new here so please be kind lol... am trying to build a web app with revel +vuejs wasn't easy but it worked at last... then i tried with Nuxtjs due to SEO... but i have not been able to do that with Revel... so my question is Goxygen is great but can it work with nuxtjs?
    Jakob
    @Jakob-em
    @cgaspart
    Which version of go are you using?
    Jakob
    @Jakob-em
    ReplaceAll was added with go 1.12 so you need to have at least go 1.12 installed in order to use goxygen
    @Shpota Did you test goxygen with go 1.11 bc in the readme it says that at least go 1.11 is needed but I think 1.12 is the minimal requirement
    Daniel Wolff
    @danielrwolff
    Neat project! First thing that came to mind is typescript support for React. I noticed you mentioned this is a requested feature. Can I tackle this for you?
    Jakob
    @Jakob-em
    Go for it
    Sasha Shpota
    @Shpota
    @cgaspart apparently support of Go 1.11 has been broken unintentionally. Could you please update your Go to yhe latest one? I'll fix it later.
    Sasha Shpota
    @Shpota
    @danielrwolff sure, that would be great. I have not thought yet on the best way of adding typescript. We can discuss it here. The current approach to support different technologies is prefixing file paths with the name of the technology.
    I thought about adding new databases as a next step. But I see that I need to concentrate on automations. I am planning to add the followibg functionality in the nearest time: 1) CI jobs that would build Goxygen on Go 1.11 to 1.14; 2) daily scheduled CI jobs that would generate test projects for each technology (vue, angular, react) and build a Docker images for these projects.
    Jakob
    @Jakob-em
    Cool idea to improve the CI setup of the project. But why would schedule the second job daily and not just after every commit to the master?
    Daniel Wolff
    @danielrwolff
    @Shpota I've already thrown together a "react-ts" webapp that's identical to the "react" webapp (but written in Typescript, obviously). I noticed you removed the service worker files from the react-js template. Is there a reason for this?
    Also, is there any desire to keep the frameworks up to date automatically? The version of react-js is a minor version behind the currently supported version already, and that got me thinking on what your plans were.
    Daniel Wolff
    @danielrwolff
    PR for React+Typescript is up at #51
    Sasha Shpota
    @Shpota
    @danielrwolff thank you. I'll be able to review the PR on Tuesday. From a brief look, I can say that it is better to release TS support for both Vue and React at the same time. That's why I would not change the cli package at this moment, but rather introduce non-breaking changes in the codegen package that would allow the further extension. I was also thinking on reusing the similar files in js and ts projects (like env setup, images, etc) but I haven't tried developing this concept yet.
    Sasha Shpota
    @Shpota
    @Jakob-em the jobs have to run on every push as well. The daily run is needed to ensure that all dependencies are consistent. This would allow us to react fast. For instance, on my memory there were cases when packages were removed from NPM. We also don't provide package-lock.json and go.sum during generation. It is useful as the user would get the latest patches when these files are generated on their machine. At the same time, some patches might introduce breaking changes (they should not, but it is still possible).
    Sasha Shpota
    @Shpota
    One more field is apt call in Dockerfile (which installs gcc). The daily run would ensure that the apt repository is still available and the packages work correctly.
    Jakob
    @Jakob-em
    Good points, I didn't thought about those 👍
    Daniel Wolff
    @danielrwolff
    @Shpota I'll go ahead and undo the CLI changes, then. Unfortunately I don't have much experience with Vue, but I can look into it over the next few days.
    Sasha Shpota
    @Shpota
    @danielrwolff thank you. I can't check the changes now (far from my computer). I'll take a look at them on Tuesday.
    Sasha Shpota
    @Shpota
    Hi guys,
    I have released a new minor version with two bug fixes:
    • A generated project can't be started with docker-compose on some platforms (Shpota/goxygen#48);
    • It is not possible to generate a project using Go 1.11 (Shpota/goxygen#53).
    I also reviewed one PR (added a comment), but I don't have time to review the other one today. I'll check it later.
    As a part of Shpota/goxygen#53, I added a CI job that would build the project on Go 1.11 - 1.14 every time a commit is pushed/PR created. This will hopefully prevent incompatibility issues in future.
    Sasha Shpota
    @Shpota
    I have added a CI job that would create all types of projects and ensure that the generated projects build without errors. The job would run daily and on every push/PR. This would simplify the development process and allow to keep the templates consistent.
    https://github.com/Shpota/goxygen/pull/56/files
    srgeneroso
    @SrGeneroso
    hello?
    Sasha Shpota
    @Shpota
    Hi @SrGeneroso
    Daniel Wolff
    @danielrwolff
    @Shpota has any more thought been put into how to handle frontend frameworks? I'd still like to contribute to this project but I'm unsure of the correct direction to head in due to the comments on my PR.
    Sasha Shpota
    @Shpota

    Hi @danielrwolff.

    I am sorry for not responding for long. It's been quite a hard month for me and I didn't have enough time to work on the project. I would propose to continue the discussion on adding typescript next week. I am planning to release a new version with relation databases support on Monday/Tuesday and then we could discuss how to add typescript support and the pros and cons of having templates in the same repository.

    In the meantime, if you have time and desire it would be great if you could work on CI enhancements. As we're adding more and more technologies it's getting harder to control the consistency of templates. I've done some work in this area and now templates are verified by building a docker container with the generated application. It ensures that both JS and Go builds are working, at the same time, it doesn't guarantee that the application is working. I think we can improve this by actually running the application with docker-compose. The idea is that we can run the application, wait until it starts and make a curl request to ensure that it's responding. What do you think about this?

    Here are the existing pipelines. I didn't investigate much if GitHub actions support such level of integration testing, but I guess they do according to this thread.

    Daniel Wolff
    @danielrwolff
    No worries, Sasha. It's been a tough time for most people due to the current pandemic. I've had my own hold-ups as well, since my primary development machine isn't working and my new one is still being built. I probably won't be able to contribute any development work for a couple weeks, but I can definitely help plan things out.
    I'll take a look at those CI tasks some time this week and provide some input.
    Wauchy
    @Wauchy
    How to genereta new pages/components with this project?
    Sasha Shpota
    @Shpota
    @Wauchy you can't do that with Goxygen. Instead, use the framework specific CLI tools. We don't try to compete with create-react-app, Angular CLI or Vue CLI - they are already doing this very well. Goxygen is meant to be used as a stating point for generation of full stack projects.
    Wauchy
    @Wauchy
    (Y)
    Иван Сердюк
    @oceanfish81_twitter
    Please let me know if someone would be interested to migrate to https://go.googlesource.com/gollvm/
    I Wayan Bagus Ari Mantara
    @aratnamirasugab
    Hi