oca / account-invoice-reporting Goto Github PK
View Code? Open in Web Editor NEWOdoo Invoicing reports
License: GNU Affero General Public License v3.0
Odoo Invoicing reports
License: GNU Affero General Public License v3.0
Hello @manuelregidor ( @HaraldPanten @ValentinVinagre ),
What do you think about this improvement in this module you did?
Thank you for opinions and other point of view 😄
At @ursais, we have a module to compute some financial statistics for a partner:
I think this repository would be the best fit to host it, unless the feature already exists in a module I haven't found.
Any opinion? Interest?
Thanks.
Hi,
If you try to print an invoice with lot numbers an error occurs.
Seems that it is related with the use of account_facturx addon.
Error
Odoo Server Error
Traceback (most recent call last):
File "/home/odoo/OCB-12.0/addons/web/controllers/main.py", line 1671, in report_download
response = self.report_routes(reportname, docids=docids, converter=converter)
File "/.repo_requirements/odoo/odoo/http.py", line 519, in response_wrap
response = f(*args, **kw)
File "/home/odoo/OCB-12.0/addons/web/controllers/main.py", line 1612, in report_routes
pdf = report.with_context(context).render_qweb_pdf(docids, data=data)[0]
File "/.repo_requirements/odoo/odoo/addons/base/models/ir_actions_report.py", line 733, in render_qweb_pdf
return self._post_pdf(save_in_attachment, pdf_content=pdf_content, res_ids=html_ids), 'pdf'
File "/home/odoo/OCB-12.0/addons/account_facturx/models/ir_actions_report.py", line 25, in _post_pdf
writer.cloneReaderDocumentRoot(reader)
AttributeError: 'PdfFileWriter' object has no attribute 'cloneReaderDocumentRoot'
Hi
Can the "partner days to pay" be backdated/calculated using existing data? Or does it only begin to calculate once the module is installed?
Is there a way to flag previous transactions to calculate these figures using historical data?
Thanks
Hi, two improvment suggestion about account_invoice_report_grouped_by_picking
Error:
Odoo Server Error
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/models.py", line 1101, in _validate_fields
check(self)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 345, in check_xml
view_def = view.read_combined(['arch'])
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 780, in read_combined
arch = self.apply_view_inheritance(arch_tree, root.id, self.model)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 729, in apply_view_inheritance
source = self.apply_inheritance_specs(source, specs_tree, view_id)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 707, in apply_inheritance_specs
self.raise_view_error(("Element '%s' cannot be located in parent view") % tag, inherit_id)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 545, in raise_view_error
raise ValueError(message)
ValueError: El elemento '' no puede ser localizado en la vista padre
Contexto del error:
Vista report_invoice_document
[view_id: 2215, xml_id: n/a, model: n/a, parent_id: 562]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 757, in parse
self._tags[rec.tag](rec, de, mode=mode)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 735, in _tag_template
return self._tag_record(record, data_node)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 662, in _tag_record
record = model.with_context(rec_context)._load_records([data], self.mode == 'update')
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3804, in _load_records
records = self.create([data['values'] for data in to_create])
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 425, in create
return super(View, self).create(vals_list)
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3541, in create
fields[0].determine_inverse(batch_recs)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1104, in determine_inverse
getattr(records, self.inverse)()
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 275, in _inverse_arch
view.write(data)
File "/usr/lib/python3/dist-packages/odoo/addons/website/models/ir_ui_view.py", line 41, in write
return super(View, self).write(vals)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 441, in write
return super(View, self).write(self._compute_defaults(vals))
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3258, in write
self._write(store_vals)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3402, in _write
self._validate_fields(vals)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 1105, in validate_fields
raise ValidationError("%s\n\n%s" % (("Error while validating constraint"), tools.ustr(e)))
odoo.exceptions.ValidationError: ('Error mientras se validaban las restricciones\n\nEl elemento '' no puede ser localizado en la vista padre\n\nContexto del error:\nVista report_invoice_document
\n[view_id: 2215, xml_id: n/a, model: n/a, parent_id: 562]', None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/http.py", line 654, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 312, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 87, in reraise
raise value
File "/usr/lib/python3/dist-packages/odoo/http.py", line 696, in dispatch
result = self._call_function(**self.params)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 344, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 97, in wrapper
return f(dbname, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 337, in checked_call
result = self.endpoint(*a, **kw)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 939, in call
return self.method(*args, **kw)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 517, in response_wrap
response = f(*args, **kw)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 966, in call_button
action = self._call_kw(model, method, args, {})
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 954, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 749, in call_kw
return _call_kw_multi(method, model, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 736, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "", line 2, in button_immediate_install
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 71, in check_and_log
return method(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 442, in button_immediate_install
return self._button_immediate_function(type(self).button_install)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 535, in _button_immediate_function
modules.registry.Registry.new(self._cr.dbname, update_module=True)
File "/usr/lib/python3/dist-packages/odoo/modules/registry.py", line 86, in new
odoo.modules.load_modules(registry._db, force_demo, status, update_module)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 421, in load_modules
loaded_modules, update_module, models_to_check)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 313, in load_marked_modules
perform_checks=perform_checks, models_to_check=models_to_check
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 222, in load_module_graph
load_data(cr, idref, mode, kind='data', package=package, report=report)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 68, in load_data
tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind, report)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 801, in convert_file
convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 864, in convert_xml_import
obj.parse(doc.getroot(), mode=mode)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 763, in parse
exc_info[2]
File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 86, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 757, in parse
self._tags[rec.tag](rec, de, mode=mode)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 735, in _tag_template
return self._tag_record(record, data_node)
File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 662, in _tag_record
record = model.with_context(rec_context)._load_records([data], self.mode == 'update')
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3804, in _load_records
records = self.create([data['values'] for data in to_create])
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 425, in create
return super(View, self).create(vals_list)
File "", line 2, in create
File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
return create(self, arg)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3541, in create
fields[0].determine_inverse(batch_recs)
File "/usr/lib/python3/dist-packages/odoo/fields.py", line 1104, in determine_inverse
getattr(records, self.inverse)()
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 275, in _inverse_arch
view.write(data)
File "/usr/lib/python3/dist-packages/odoo/addons/website/models/ir_ui_view.py", line 41, in write
return super(View, self).write(vals)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_ui_view.py", line 441, in write
return super(View, self).write(self._compute_defaults(vals))
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3258, in write
self._write(store_vals)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 3402, in _write
self._validate_fields(vals)
File "/usr/lib/python3/dist-packages/odoo/models.py", line 1105, in validate_fields
raise ValidationError("%s\n\n%s" % (("Error while validating constraint"), tools.ustr(e)))
odoo.tools.convert.ParseError: "Error mientras se validaban las restricciones
El elemento '' no puede ser localizado en la vista padre
Contexto del error:
Vista report_invoice_document
[view_id: 2215, xml_id: n/a, model: n/a, parent_id: 562]
None" while parsing None:4, near
</xpath>
<xpath expr="//tbody[hasclass('invoice_tbody')]" position="inside">
<t t-set="subtotal" t-value="0.0"/>
<t t-set="lines_grouped" t-value="o.lines_grouped_by_picking()"/>
</xpath>
<xpath expr="//t[contains(@t-foreach, 'o.invoice_line_ids')]" position="attributes">
<attribute name="t-foreach">o.lines_grouped_by_picking()</attribute>
<attribute name="t-as">lines_group</attribute>
</xpath>
<!-- Appends before 'current_subtotal' compute -->
<xpath expr="//t[@groups='account.group_show_line_subtotals_tax_excluded']" position="before">
<t t-set="l" t-value="lines_group['line']"/>
<t t-set="line" t-value="lines_group['line']"/>
<t t-set="picking" t-value="lines_group['picking']"/>
<t t-set="lines_grouped" t-value="o.lines_grouped_by_picking()"/>
<t t-set="next_picking" t-value="[lines_grouped[i + 1]['picking'] for i, x in enumerate(lines_grouped) if x == lines_group and i < len(lines_grouped) - 1] or [False]"/>
<t t-if="picking != last_picking">
<tr t-if="picking">
<td colspan="10">
<strong>
<span>Order:</span>
<span t-field="picking.sale_id.name"/>
<t t-if="picking.sale_id.client_order_ref">
<span t-translation="off"> (</span><span t-field="picking.sale_id.client_order_ref"/><span t-translation="off">)</span>
</t>
<span>Picking:</span>
<span t-field="picking.date_done" t-options="{'widget': 'date'}"/>
<span t-field="picking.name"/>
</strong>
</td>
</tr>
</t>
</xpath>
<xpath expr="//td/span[@t-field='line.quantity']" position="attributes">
<attribute name="t-esc">lines_group['quantity']</attribute>
<attribute name="t-field"/>
<attribute name="t-options">{'widget': 'float', 'decimal_precision': 'Product Unit of Measure'}</attribute>
</xpath>
<xpath expr="//td/span[@t-field='line.price_subtotal']" position="before">
<t t-if="lines_group['quantity'] != l.quantity" id="picking_subtotal" groups="!account.group_show_line_subtotals_tax_included">
<!-- Compute subtotal for that picking with discounts -->
<t t-set="line_picking_subtotal" t-value="l.quantity and lines_group['quantity'] * (l.price_subtotal / l.quantity) or 0.0"/>
<t t-set="subtotal" t-value="(subtotal or 0.0) + line_picking_subtotal"/>
<span t-esc="line_picking_subtotal" t-options="{"widget": "monetary", "display_currency": o.currency_id}"/>
</t>
<t t-else="">
<t t-set="subtotal" t-value="(subtotal or 0.0) + l.price_subtotal"/>
</t>
</xpath>
<xpath expr="//td/span[@t-field='line.price_subtotal']" position="attributes">
<attribute name="t-if">lines_group['quantity'] == l.quantity</attribute>
</xpath>
<xpath expr="//td/span[@t-field='line.price_total']" position="attributes">
<attribute name="t-if">lines_group['quantity'] == l.quantity</attribute>
</xpath>
<!-- Append subtotal row after invoice line row-->
<xpath expr="//t[@t-foreach='o.lines_grouped_by_picking()']//td[hasclass('o_price_total')]" position="after">
<tr t-if="picking and picking != next_picking[0]">
<td colspan="10" class="text-right">
<strong>Subtotal: </strong>
<strong t-esc="subtotal" t-options="{"widget": "monetary", "display_currency": o.currency_id}"/>
</td>
<t t-set="subtotal" t-value="0.0"/>
</tr>
<t t-set="last_picking" t-value="picking"/>
</xpath>
<!-- Replicate logic if B2C prices-->
<xpath expr="//td/span[@t-field='line.price_total']" position="before">
<t t-if="lines_group['quantity'] != l.quantity" groups="account.group_show_line_subtotals_tax_included">
<!-- Compute subtotal for that picking with discounts -->
<t t-set="line_picking_subtotal" t-value="l.quantity and lines_group['quantity'] * (l.price_total / l.quantity) or 0.0"/>
<t t-set="subtotal" t-value="(subtotal or 0.0) + line_picking_subtotal"/>
<span t-esc="line_picking_subtotal" t-options="{"widget": "monetary", "display_currency": o.currency_id}"/>
</t>
<t t-else="">
<t t-set="subtotal" t-value="(subtotal or 0.0) + l.price_total"/>
</t>
</xpath>
<xpath expr="//td/span[@t-field='line.price_total']" position="attributes">
<attribute name="t-if">lines_group['quantity'] == l.quantity</attribute>
</xpath>
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-10.0
Is your feature request related to a problem?
When an invoice has already linked payments, due list doesn't show actual pending payment information.
Describe the solution you'd like
I have a customer that usually sends invoice document to his customers when some or full payments are already done. In those cases, due list provided by this addon actually shows past information, because initial amounts are listed. He'd prefer only pending amounts and dates to be shown.
Describe alternatives you've considered
I have this doubt: should I develop an improvement PR that optionally uses amount_residual
/amount_residual_currency
instead of balance
/amount_currency
fields (e.g. with a per-invoice flag "show only pending amounts for due list in invoice report"), or a better approach should be making a new addon inheriting this one that adds this feature?
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-13.0
Missing module? Check https://github.com/OCA/maintainer-tools/wiki/%5BFAQ%5D-Missing-modules-in-migration-issue-list
The community suggested me to install invoice_webkit to fix a small bug in the Odoo7.0 invoice but now I can't print it http://i.imgur.com/ftaNTUV.png what am I missing? Thanks
When you make a RINV on the report quantity its dupliated like you can see on this screenshots:
Lets make the partial RINV:
And then lets print report from RINV:
Total amount its fine but the quantity marked its double, i dont know why all this section is there or i am not getting the point; i think that it could be removed and show only the returned quantity.
B/R
Hemos instalado el módulo y nos encontramos que cuando hay una devolución de un producto no nos detalla el abarán ni de devolución ni de origen y a la vez, el importe total de las cantidades devueltas no es correcto y para los clientes no queda nada claro, porqué sólo sale la cantidad en negativo, pero en el total de la linea no.
Agradecería si alguien nos pudiera ayudar.
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-12.0
module: account_invoice_production_lot
version: 8.0
I have installed the module "Invoice Production Lots" and the Serial no. doesn't appear on customers invoice line form.
When I print the invoice the serial no. is displayed on invoice line.
I need a link between invoice line and serial number.
Can you tell me how to fix this issue?
Thank you!
I have a use case where the business is not only B2B but also B2C.
The comment_template_id field in the res_partner_views.xml has an invisible attr set if the partner is not a company.
Now I am not sure if this is a potential improvement for the account_invoice_comment_template or base_comment_template to include B2C (Person) as well?
I have also noted that there is only a many2one field in the res.partner view to select/chose one comment_template (either a top OR a bottom comment template) - Is there a reason why it's limited to one of them.
What's your opinion on this one guys? Thanks for your Input
module: account_invoice_production_lot
version: 8.0
Steps to reproduce
module installation creates problems on the database. To make it work I had to install the module commenting code init.py in this way:
from . import invoice
#from . import tests
Hello
Trying to install the invoice module or the just the base module, I get the following error:
ParseError: "ValidateError
Field(s) `arch` failed against a constraint: Invalid view definition
Error details:
Element '<xpath expr="//p[@t-if='o.comment']">' cannot be located in parent view
Error context:
View `report_invoice_document_comments`
[view_id: 1506, xml_id: n/a, model: n/a, parent_id: 532]" while parsing None:5, near
<data inherit_id="account.report_invoice_document">
<xpath expr="//div[contains(@class, 'page')]/table[1]" position="before">
<p t-if="o.note1">
<span t-field="o.note1"/>
</p>
</xpath>
<xpath expr="//p[@t-if='o.comment']" position="after">
<p t-if="o.note2">
<span t-field="o.note2"/>
</p>
</xpath>
</data>
Thank you
Hi
using the OCA module account_invoice_merge, if we print merged invoice it appears WITHOUT serial/lot numbers (the module account_invoice_merge is not getting the new field created to store serials.
I'm interested in module "account_invoice_report_by_partner".
This module in v10 it's very out-of-date. I'd like to migrate it to v14 if there's no other way to achieve the same goal.
Ping contributors @cubells @angelmoya
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-17.0
Missing module? Check https://github.com/OCA/maintainer-tools/wiki/%5BFAQ%5D-Missing-modules-in-migration-issue-list
Error in module account_invoice_report_grouped_by_picking
When we create a rectified invoice that does not have the total of the units sold, in this case 2000 have been sold and 40 have been rectified, when printing the invoice, with the module account_invoice_report_grouped_by_picking installed.
The report that appears is wrong.
Since instead of the 2000 units, only 40 are rectified. As in the rest of calculations.
Discussed here on the mailing list here: https://odoo-community.org/groups/accounting-28/accounting-47727
Would like to start with a Templated Designer for Qweb focussed on Invoices. As this is a first missing need.
From there we could further build upon this Designer to allow it to be a full Qweb Template Designer.
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-15.0
Missing module? Check https://github.com/OCA/maintainer-tools/wiki/%5BFAQ%5D-Missing-modules-in-migration-issue-list
partner_time_to_pay
Affected versions:
12.0.1.0.0
Steps to reproduce the behavior:
Expected behavior
Above points should be corrected and payments should be aggregated from reconciled payments NOT from invoice.payment_ids
account_invoice_report_grouped_by_picking
When in an invoice grouped by delivery notes, one of the lines is divided into different delivery notes, the amount field is showing the price with taxes included instead of the taxable base, as the rest of the lines do.
Affected versions: 17.0
Steps to reproduce the behavior:
1.Create an order with a product that has more than one unit.
2.Create a partial delivery note.
3.Invoice the order.
4. Print report
Expected behavior
In the printed report, the expected amount should not include taxes.
Additional context
The problem seems to be that price_total is assigned where price_subtotal should be.
Module code that operates on the report:
...account_invoice_report_due_list
Due list not printed when there isn't payment term
Affected versions: Tested in V13. Probably version 14 is also affected.
(Updated: Tested V14 on Runboat. It is also affected)
Steps to reproduce the behavior:
Expected behavior
Due list must be printed even if the due date is set manually.
account_invoice_report_grouped_by_picking
I have tested in module account_invoice_report_grouped_by_picking the function show section and notes in runboat and it does´nt work
Affected versions: v13.0
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here. (e.g. OS, Python version, ...)
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-11.0
on release 12, if invoice is created from POS (when we sell there serial numbered products), the invoice pdf layout appears without serial numbers, but the title "serial numbers:" is printed there.
On invoice that comes from a "standard" sale order, the serial numbers are correctly printed on invoice pdf layout.
thanks!
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-16.0
Missing module? Check https://github.com/OCA/maintainer-tools/wiki/%5BFAQ%5D-Missing-modules-in-migration-issue-list
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-9.0
account_payment_term_partner_holiday
When account_payment_term_partner_holiday is installed with account_invoice_report_due_list, term of payment with multiple due date will recomputed with default function.
Affected versions:
Steps to reproduce the behavior:
Expected behavior
Date would be delayed after holiday dates.
Additional context
Add any other context about the problem here. (e.g. OS, Python version, ...)
In some service companies, the customer is invoiced for a service that may consume inventory items. Those inventory items needs to be invoiced to account in the cost of services sold and reconcile the value of the inventory items delivered and sitting in the Un-Invoiced Goods Delivered, but they should not appear to the customer on the PDF report of their invoice.
This module allows you to hide invoice lines from the PDF report if the unit price is 0.
Dependencies: account
Hi,
After update account_invoice_report_grouped_by_picking, if you try to print again an invoice created before the module update, the groups by picking don't appear but on the newly created invoices appear fine.
The old invoices appear without any kind of group.
No error or warning into the log when update.
What is missing?
Hi all,
I realised that selecting the "Section on sales order" option (Sales --> Settings --> Quotations & Orders --> "Section on sales order") the invoice is not being printed as expected.
It's going to be printed just considering this setting --> "Section on sales order".
In my honest opinion, I think that these two options should be compatible.
What do you think?
Thank you so much in advance.
https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-14.0
Missing module? Check https://github.com/OCA/maintainer-tools/wiki/%5BFAQ%5D-Missing-modules-in-migration-issue-list
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.