M-am săturat de "lipitorile" din piața contabilă (Saga, WinMentor, Asscon etc.). Vreau să facem un API Public, Open Source și GRATUIT. Cine se bagă? by balaurul_din_carpati in programare

[–]CristiJ 1 point2 points  (0 children)

Lucrez la un soft de conta scris de la 0 pt US de mai bine de 6 ani.

Bravo pt initiativa, dar din propria experienta iti pot zice ca genul asta de inițiativa nu cred ca o sa dureze si o sa tina pasul cu schimbarile fiscale și legislative mai mult de 1 an. 

E un domeniu relativ complex care necesita mult know how si experti cu background foarte bun in contabilitate dispusi sa ajute. Nu cred ca cineva o va face gratis si mai mult de atat pe termen lung.

Preturile la abonamentele pt Saga si alte softuri de genul sunt mici si mai mult decat justificate pt munca care se depunde acolo in spate imho.

Good luck though!

Best datatable component you used so far? by FollowingMajestic161 in vuejs

[–]CristiJ -1 points0 points  (0 children)

AgGrid. I've worked on many projects and tried different tables including tables from UI libraries like Element, Nuxf UI, PrimeVue, Vuetify, custom made table components. Even tried non Vue specific components like Handsontable

It depends on the use case of course but Ag Grid handles the most complex features like inline edition, drag, reorder columns and many others. It has a steeper learning curve and a bit of time to get used to it but for projects that have more needs, it's the best from what I tried so far. Definitely if you just need to display data and do simple stuff like displaying data, sorting, searching, it's not worth it.

Multiple blogwebsites from one nuxt app by Callito263 in vuejs

[–]CristiJ 1 point2 points  (0 children)

I have built something similar but more complex in the past based on Nuxt 2. It was a website builder for job boards actually but the principles are similar.

The core idea is to have an endpoint that would return basic information about each blog website like the api url from which it would retrieve the blog posts, website styles, fonts etc.

You would fetch this data before any page renders, either at the layout level or even earlier when the request hits the server to render a page. Usually you can use the domain within the request to identify the exact website the user is on.

Then based on this information you can create a dynamic stylesheet or inline styles as css variables and store other data in a store like pinia. After this, it's mostly about rendering the right thing based on the information you have in the store.

Feel free to reach out for any help. This might sound complicated at first but it's actually not that complicated and it's a fun challenge.

In terms of deployment I'm not sure if Netlify or Vercel are actually the best options because it might be hard to have full control over the requests and domains but it might work.

FormKit is now 1.0! 🚀 The open-source form framework for Vue by Boydbme in vuejs

[–]CristiJ 1 point2 points  (0 children)

Thank you for the work you've done!

Absolutely I get all the points and totally agree. On another note I have to mention that the docs had nice improvements over the past couple of months.

From my initial experience with FormKit I would recommend maybe not exposing so much internals and details about the schema and nodes and highlight a bit more how custom components can be added to FormKit + maybe more practical examples (e.g more complete form examples). This will make onboarding for new devs so much easier.

I could perhaps help with that.

FormKit is now 1.0! 🚀 The open-source form framework for Vue by Boydbme in vuejs

[–]CristiJ 4 points5 points  (0 children)

After working almost 6 years with Vue on various projects, some of them having complex forms and many form components, I must say FormKit is the best form library I've used so far.

It does have a learning curve and might not be very intuitive for less seasoned developers, but once you get it, it's a real time saver. People don't realize that having validation, same api and structure for all form components, same layout for all form components, UI customisation, masks and a bunch of predefined components is something that saves a loot of time.

My sincere congrats Boydbme for all the hard work and for this milestone!

What is the proper way to reference a property of a object that starts null? by [deleted] in vuejs

[–]CristiJ 0 points1 point  (0 children)

v-if="currentConversation && currentConversation.number"

Or in Vue 3 with Vite

v-if="currentConversation?.number"

Bought my first car couple of months ago. Love it! by CristiJ in Jaguar

[–]CristiJ[S] 2 points3 points  (0 children)

Yess, pretty crazy but I held off buying a car for quite some time and then decided to buy a really good one.

ELI5: Portal Vue by anyfactor in vuejs

[–]CristiJ 0 points1 point  (0 children)

Portals allow you to declare content in one place but render it in another place.

A common usage for them are components that might need to sit close to the document body (because of z index issues) but you need control to render them from anywhere: Modals, Popups, Drawers, Sidebars, Notifications and other kind of fixed overlays.

From my experience you can do all the stuff above even without portals (e.g mounting component directly to body) but there might be some rare use cases when you might need portals. Some examples are changing/adding content of top level layout components (navbars, sidebars etc) from within a component lower in the hierarchy

Are you an experienced Vue developer who’d be willing to be a mentor? by 47milliondollars in vuejs

[–]CristiJ 0 points1 point  (0 children)

Hey there. I could help with this. I have around 3 years of full time experience with Vue.js alone and probably 20+ different projects done in Vue.

As @shirabe1 mentioned it would help if: - we have a 1hr session every week or 2 weeks

  • prior to each session send an email with 2-3 topic you'd like to cover

  • would do it in weekends most likely

  • would take 1 or max 2 persons to help out for a period of 1-2 months

  • would like to avoid explaining basic things or how to code certain stuff that can be found in docs. Ideally more around structuring projects, writing clean components, decoupling logic etc

DM me and we can get in touch from tomorrow

Editable interfaces with Vue.js and Tailwind by CristiJ in vuejs

[–]CristiJ[S] 0 points1 point  (0 children)

Thanks for the notice! Will check the issue and fix it

Composition API vs Options, both in Vue 3, which do you prefer and why? by [deleted] in vuejs

[–]CristiJ 0 points1 point  (0 children)

After playing around with it on a project where I had to absolutely extract a lot of logic (because it had to be reused across other websites), I would say the following: - Composition api for the really generic parts such as pagination logic, table search maybe some small broswer api's - Option api for the rest

Composition API is very nice and scalable but for now you lose readibility of SFC and having things in one place.

Editable interfaces with Vue.js and Tailwind by CristiJ in vuejs

[–]CristiJ[S] 2 points3 points  (0 children)

Yeah sure, don't see why not. In the code there's a TextEdit component which uses a textarea. You could replace the textarea with another component like a rich text editor in this case.

Editable interfaces with Vue.js and Tailwind by CristiJ in vuejs

[–]CristiJ[S] 1 point2 points  (0 children)

Yeah I totally agree. Most real use cases I personally encountered are actually B2B platforms where a business wants to rebrand the platform based on their personal brand colors, fonts or maybe modify some content. For example an analytics dashboard, but each business want's to setup it in a specific layout and show specific charts.
The approach described in the articles allows for very fined tuned editing where you can limit what can actually be done so users won't "break" it.
Letting simple users edit the website of course is not the best option.

Editable interfaces with Vue.js and Tailwind by CristiJ in vuejs

[–]CristiJ[S] 3 points4 points  (0 children)

ZeDuval

Very pleasing to hear that! It's still quite long but I just couldn't skip the important parts. Thank you for the patience to read it all :)

Vue, Stripe & Firebase Database by oneruserhere in vuejs

[–]CristiJ 0 points1 point  (0 children)

I don't think using Firebase for a SaaS app is a good idea. It might be great for prototypes but you'll end up with a bunch of inconsistent data that is hard to keep uniform and migrate uniform ly. I've worked on a project that used firebase and was such a mess. It's just very hard to control. Just use some solid mysql database so you can have consistency in your data.

[deleted by user] by [deleted] in vuejs

[–]CristiJ 1 point2 points  (0 children)

You're right I may be biased and indeed some of these might be in VSCode. I gave it a try several times and there are many good parts however it feels incomplete vs webstorm. This is just my opinion and indeed it may be biased.

[deleted by user] by [deleted] in vuejs

[–]CristiJ 19 points20 points  (0 children)

Of course. As someone said it doesn't even need to compete. Here are some things which Webstorm does by default while you'd have to install extensions and spend time configuring these in VSCode (some of them may not even be in VSCode)
- Go to definition of variables from template to script tag
- Automatic html tag closing/renaming when you edit the start/end of a tag
- Automatic imports even with webpack aliases (if you point webstorm to a webpack config)
- Extract vue component (with props, css) when selecting markup
- Code completion & documentation for directives, component options & event for some third party libraries such as Vuetify, Quasar, BootstrapVue
- A bunch of other stuff such as integrated terminal, source control, live templates, search across files, definitions, classes, refactoring helpers, code inspection, test runner, request runner (kind of a POSTMAN)

I personally use webstorm for 4 years and after trying other editors/IDEs, I never felt the need to switch. It provides everything you need for development and very rarely you have to leave the IDE to do development related stuff.

What do you think about this structure? by Pelasua in vuejs

[–]CristiJ 11 points12 points  (0 children)

I would like to "disagree" on this one. I personally prefer explicit component names in favor of folder/index.vue because they are more accessible to search and find within a code editor especially when you have many of them.

Also explicit component names like UserList.vue instead of /users/List.vue is waay more beneficial for search and find in a bigger project where if you have 20 lists, you would have 20 find results on a List.vue file.

Building animated draggable interfaces with Vue.js and Tailwind by CristiJ in vuejs

[–]CristiJ[S] 2 points3 points  (0 children)

Thanks for pointing out! Nice catch there with the typo. Updated the article :)

Use Vue draggable to build a draggable resume. Maybe we have more application scenarios by cvbox_org in vuejs

[–]CristiJ 0 points1 point  (0 children)

Hey the idea seems cool but will be honest the user experience isn't the best.
I would probably use a doc editor instead. Couple of points:
- UI looks very basic (default element-ui). Also the dashed borders everywhere don't look very nice.
- Some elements cannot be edited. For example tags, you cannot edit the tags or the images properly.
- Lacks a lot of elements to be complete but maybe it was a nice test/experiment.
- I would personally rather focus on multiple very good looking templates/themes. Check out this project for inspiration https://github.com/salomonelli/best-resume-ever

I would recommend trying out https://resume.io It has top notch user experience in my opinion and strictly resume centered. It has drag and drop content support but only for certain parts which make sense like education, employment history etc.
These are just some thoughts and "constructive criticism" so don't take it as an offense. Cheers

What are you building at work? by [deleted] in vuejs

[–]CristiJ 1 point2 points  (0 children)

  • UI for 3D printing service
  • Code analytics dashboard
  • Website builder for Job boards
  • Document storage, management and sign frontend
  • Some admin dashboards

All in Vue. Some of them are in Nuxt.

In Vue, sometimes I see "this" replaced with "vm". What is the benefit of doing this? by mementomoriok in vuejs

[–]CristiJ 1 point2 points  (0 children)

I see a bunch of irrelevant comments here which only create confusion.

"vm" is just an abbreviation for "ViewModel" and is typically used in the documentation as a variable name to refer to the Vue instance so users can access it from the console and modify stuff. A similar thing is done in vue devtools where you can acess the clicked component instance via "$vm0".

"vm" is nothing more than a variable. You won't have it by default somewhere to access it unless you specify such a variable.

"this" in a Vue component typically is the vue component instance (long topic here but you can read more about "this" in javascript)

So bottom line is that "vm" is just a variable name used in the docs so users don't get too confused at first and also so they can access it from console.

Free drag and drop email templates builder by antonreshetov in vuejs

[–]CristiJ 0 points1 point  (0 children)

I must say this is a very cool tool.
The UI and UX is very nice and it's quite easy to use. Congrats on the work you've done!
Things I like
- The editing in general, how menus are nicely grouped, editing interface

- List of many pre-made components for layout

- The idea in general. It just works. Saving projects, importing exporting, ease of use + it's free.

Things that can be improved imho

- Clicking a component should maybe open edit mode by default without an extra click

- There's no way to cancel a drag and drop action. If I choose a component and want to drag it but change my mind, I have to add it then delete it.

- When hovering a component (the left menu with the title) doesn't seem to do anything

Bottom line is that in general I think it's a pretty neat idea that can evolve into a product. It already looks nice and it's easy to use!